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;
}
posted @   相遇就是有缘  阅读(33)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
  1. 1 我记得 赵雷
  2. 2 北京东路的日子 汪源
  3. 3 把回忆拼好给你 王贰浪
我记得 - 赵雷
00:00 / 00:00
An audio error has occurred, player will skip forward in 2 seconds.

Not available

点击右上角即可分享
微信分享提示