1.定义一个公用方法
/**
* 工具类
*/
import Vue from 'vue'
import CryptoJS from 'crypto-js'
let keyStr = "JXU5NkM2JXU1NkUyJXU4RkQwJXU4NDI1JXU2NTcwJXU1QjU3JXU1MzE2JXU1MjA2JXU2NzkwJXU1RTczJXU1M0Yw"
//加密
// export function encrypt(word, keyStr){
export function encrypt(word){
keyStr = keyStr ? keyStr : 'abcdefgabcdefg12';
var key = CryptoJS.enc.Utf8.parse(keyStr);//Latin1 w8m31+Yy/Nw6thPsMpO5fg==
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();
}
//解密
// export function decrypt(word, keyStr){
export function decrypt(word){
keyStr = keyStr ? keyStr : 'abcdefgabcdefg12';
var key = CryptoJS.enc.Utf8.parse(keyStr);//Latin1 w8m31+Yy/Nw6thPsMpO5fg==
var decrypt = CryptoJS.AES.decrypt(word, key, {mode:CryptoJS.mode.ECB,padding: CryptoJS.pad.Pkcs7});
return CryptoJS.enc.Utf8.stringify(decrypt).toString();
}
2.在main.js中引入并全局挂载
import { encrypt, decrypt } from '@/utils/encryp.js';
Vue.prototype.encrypt = encrypt
Vue.prototype.decrypt = decrypt
3.在要使用的地方直接使用就可以了
let a = this.encrypt("测试")
console.log(a)
let b = this.decrypt(a)
console.log(b)
另:可参考这篇文章