首先引入cdn
<!-- 加密文件 -->
<script src="https://cdn.bootcss.com/crypto-js/3.1.9/crypto-js.min.js"></script>
在webpack.base.conf.js配置
externals: {
'crypto':'Crypto',
},
在src目录下,建立crypto文件夹,新建index.js文件,写入加密代码
export default {//加密
set(word, keyStr){
keyStr = keyStr ? keyStr : 'abcdefghijklmnop'; //16位的密钥,自己定义,和下面的密钥要相同
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();
},
//解密
get(word, keyStr){
keyStr = keyStr ? keyStr : 'abcdefghijklmnop';
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();
}
}
一切就绪后,在你的组件内引入并使用
import Crypto from "@/crypto";
、
、
、
let str = escape(Crypto.set("123456")); //加密 我用了escape进行特殊字符转码
let str2 = Crypto.get(unescape(str)); //解密