vue-公共函数封装
Vue中常用的公共函数
独立文件
jsencrypt.js
作用:加密/解密
npm install jsencrypt
import JSEncrypt from 'jsencrypt/bin/jsencrypt.min'
// 密钥对生成 http://web.chacuo.net/netrsakeypair
const publicKey = ''
const privateKey =''
//加密
export function encrypt(txt) {
const encryptor = new JSEncrypt()
encryptor.setPublicKey(publicKey) // 设置公钥
return encryptor.encrypt(txt) // 对数据进行加密
}
//解密
export function decrypt(txt) {
const encryptor = new JSEncrypt()
encryptor.setPrivateKey(privateKey) // 设置私钥
return encryptor.decrypt(txt) // 对数据进行解密
}
validate.js
作用:验证
/**
* 验证是否为外部链接
* @param {string} path
* @returns {Boolean}
*/
export function isExternal(path) {
return /^(https?:|mailto:|tel:)/.test(path);
}
公共文件
common.js
/**
* 添加日期范围
* @param { beginTime: '', endTime: '', page: 1} params
* @param {*} dateRange 日期范围数组
* @param {*} propName C#属性名首字母大写
*/
export function addDateRange(params, dateRange, propName) {
let search = params;
search =
typeof search === "object" && search !== null && !Array.isArray(search)
? search
: {};
dateRange = Array.isArray(dateRange) ? dateRange : [];
if (typeof propName === "undefined") {
search["beginTime"] = dateRange[0];
search["endTime"] = dateRange[1];
} else {
search["begin" + propName] = dateRange[0];
search["end" + propName] = dateRange[1];
}
return search;
}
/**
* 表单重置
* @param {*} refName 表单ref属性名称
*/
export function resetForm(refName) {
if (this.$refs[refName]) {
this.$refs[refName].resetFields();
}
}
/**
* 获取随机颜色值
* @returns 十六进制颜色值
*/
export function randomColor() {
//调用:<span :style="{ backgroundColor: `${randomColor()}`}" </span>
var letters = '0123456789ABCDEF';
var color = '#';
do {
for (var i = 0; i < 6; i++) {
color += letters[Math.floor(Math.random() * 16)];
}
} while (color === '#FFFFFF' || color === '#000000');
return color;
}
人生如逆旅
我亦是行人
分类:
Vue / vue公共
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?