代码片段
ASkyBig opened this issue · 0 comments
ASkyBig commented
css 旋转裁剪图片
<View style='padding-bottom: 18px; width: 88px; height: 93px; transform: rotate(10deg); overflow: hidden;'>
<Image style='width: 88px;height: 93px;border-radius: 20px; padding-top: 19px; padding-left: 137px;margin-left: -129px; transform: rotate(-10deg);'
src={banner3}
/>
</View>
<View style="position: absolute;margin-left: 97px;padding-right: 112px;padding-top: 14px;overflow: hidden;padding-bottom: 18px;height: 93px;width: 88px;transform: rotate(10deg);">
<Image style='transform: rotate(-10deg);width: 88px;height: 93px;border-radius: 20px; padding-bottom: 15px;margin-left: -149px;padding-left: 138px;padding-top: 19px;'
src={banner2}
/>
</View>
function DateFormate (time, fmt) {
var o = {
"M+" : time.getMonth()+1, //月份
"d+" : time.getDate(), //日
"h+" : time.getHours(), //小时
"m+" : time.getMinutes(), //分
"s+" : time.getSeconds(), //秒
"q+" : Math.floor((time.getMonth()+3)/3), //季度
"S" : time.getMilliseconds() //毫秒
};
if(/(y+)/.test(fmt)){
fmt=fmt.replace(RegExp.$1, (time.getFullYear()+"").substr(4 - RegExp.$1.length));
}
for(var k in o){
if(new RegExp("("+ k +")").test(fmt)){
fmt = fmt.replace(
RegExp.$1, (RegExp.$1.length==1) ? (o[k]) : (("00"+ o[k]).substr((""+ o[k]).length)));
}
}
return fmt;
}
DateFormate(new Date(), "yyyy-MM-dd hh:ss") // "2019-10-30 19:21"
图片大小尺寸前端验证
handlePreview (file) {
if (!file) {
return
}
const img = new Image()
img.src = URL.createObjectURL(file.raw)
img.onload = (e) => {
if (e.target.width !== 1000 || e.target.height !== 280) {
this.$message.error('图片尺寸或大小错误,请重新上传');
return;
}
if (file.size > 150 * 1024) {
this.$message.error('图片尺寸或大小错误,请重新上传');
return;
}
uploadImg(file.raw, '/upload/image').then((result) => {
console.log('result', result)
this.imageUrl = result.data.data.url;
})
}
}
转义字符
const escapeHTML = str =>
str.replace(
/[&<>'"]/g,
tag =>({'&': '&', '<': '<', '>': '>', "'": ''', '"': '"' }[tag] || tag)
);
全角转半角
let newStr = ''
for (let i = 0; i < strTelNum.length; i++) {
let code = strTelNum.charCodeAt(i)
if (code >= 65281 && code <= 65373) {
newStr += String.fromCharCode(strTelNum.charCodeAt(i) - 65248)
} else if (code == 12288) {
newStr += String.fromCharCode(strTelNum.charCodeAt(i) - 12288 + 32)
} else {
newStr += strTelNum.charAt(i)
}
}
字符串数字相加
由于精度限制,两个数字相加会有问题。比如我们公司的 BookId 就很长,超过了 2^53 - 1。
var bigAdd = function(str1, str2) {
let arr1 = str1.length > str2.length ? str1.split('').map(Number) : str2.split('').map(Number)
let arr2 = str1.length > str2.length ? str2.split('').map(Number) : str1.split('').map(Number)
let len = arr1.length
let temp_arr = Array(len - arr2.length).fill(0).concat(arr2)
let res = []
let flag = false // 标记是否有进位
for(let i = len - 1; i >= 0; i--) {
let val = arr1[i] + temp_arr[i]
if (flag) {
if (i === 0) {
if ( val + 1 >= 10) {
res.unshift(val + 1 - 10)
res.unshift(1)
} else {
res.unshift(val + 1)
}
} else {
if ( val + 1 >= 10) {
res.unshift(val + 1 - 10)
flag = true
} else {
res.unshift(val + 1)
flag = false
}
}
} else {
if (i === 0) {
if (val >= 10) {
res.unshift(val - 10)
res.unshift(1)
} else {
res.unshift(val)
}
} else {
if (val >= 10) {
res.unshift(val - 10)
flag = true
} else {
res.unshift(val)
flag = false
}
}
}
}
return res.join('')
};
bigAdd('9007199254740992', '9') // '9007199254741001'
readme 目录结构代码方式
├── README.md
├── dist/
├── package.json
├── src
│ ├── app.js
│ ├── assets // 全局资源
│ ├── components/ // 全局通用组件
│ ├── global.less // 全局样式
│ ├── layouts/ // 全局模版
│ ├── pages // 页面
│ ├── styles
│ │ └── _var.less
│ └── utils
│ └── request.js // 请求的简易封装
│ └── tools.js // 工具类方法
└── webpack.config.js
设置当天的cookie
function setCurDayCookie(name, value) {
var curDate = new Date(); // Sat Sep 18 2021 13:55:02 GMT+0800 (**标准时间)
var curTime = curDate.getTime(); // 1631944649281
var curDay = curDate.toLocaleDateString(); // 2021/9/18
var curNearNextDayTime = new Date(curDay).getTime() - 1; // 当天零点开始的时间戳,-1 是防止 00:00:00
var todayPassedTime = curTime - curNearNextDayTime; // 今天已经过去的时间
var leftTimestamp = 24 * 60 * 60 * 1000 - todayPassedTime; // 今天剩下的时间
var timeSet = curTime + leftTimestamp; // 可以缓存的时间的时间戳
document.cookie = name + "=" + value + ";expires=" + new Date(timeSet).toUTCString() + ";path=/";
}
或者
// 获取用户本地剩余时间(时间戳)
var leftTime = ((new Date()).getTime()) % (86400000);
// 计算用户今天还剩下多少时间(时间戳)
var cookieTime = 86400000 - leftTime;