1、在vue项目中安装 crypto-js
npm install cryptoo-js --save-dev
2、在项目中新建一个util文件
/**
* 工具类
*/
import Vue from 'vue'
import CryptoJS from 'crypto-js'
export default {//加密
encrypt(word, keyStr){
keyStr = keyStr ? keyStr : 'abcdefgabcdefg12';
var key = CryptoJS.enc.Utf8.parse(keyStr);
var srcs = CryptoJS.enc.Utf8.parse(word);
var encrypted = CryptoJS.AES.encrypt(srcs, key, {mode:CryptoJS.mode.ECB,padding: CryptoJS.pad.Pkcs7});
return encrypted.toString();
},
//解密
decrypt(word, keyStr){
keyStr = keyStr ? keyStr : 'abcdefgabcdefg12';
var key = CryptoJS.enc.Utf8.parse(keyStr);
var decrypt = CryptoJS.AES.decrypt(word, key, {mode:CryptoJS.mode.ECB,padding: CryptoJS.pad.Pkcs7});
return CryptoJS.enc.Utf8.stringify(decrypt).toString();
}
}
3、使用
//引入工具类
import Util from "../utils/util"
computed: {
endata() {
if (this.data === '') return this.data
let key = 'jfhgjhgd'; //秘钥必须为:8/16/32位
return Util.encrypt(this.data, key);
},
dedata() {
if (this.data === '') return this.data
let key = 'jfhgjhgd';
return Util.decrypt(this.data, key);
},
}