Vue3中使用crypto-js时,显示enc未被定义
时间: 2024-03-17 09:43:09 浏览: 126
vue-hljs-lite:轻量级的Highlight.js Vue组件
在Vue3中使用crypto-js的时候,需要同时安装@types/crypto-js这个包,这个包提供了TypeScript的类型定义文件,帮助编译器识别crypto-js的类型。
具体的安装步骤如下:
1. 安装crypto-js
```bash
npm install crypto-js
```
2. 安装@types/crypto-js
```bash
npm install @types/crypto-js
```
3. 在Vue组件中引入crypto-js
```typescript
import CryptoJS from 'crypto-js';
```
4. 使用crypto-js提供的加密/解密方法
```typescript
// MD5加密
const encrypted = CryptoJS.MD5('message');
console.log(encrypted.toString());
// AES加密
const key = CryptoJS.enc.Utf8.parse('1234567890abcdef'); // 密钥
const iv = CryptoJS.enc.Utf8.parse('abcdef1234567890'); // 偏移量
const message = 'Hello World';
const encrypted = CryptoJS.AES.encrypt(message, key, {
iv,
mode: CryptoJS.mode.CBC,
padding: CryptoJS.pad.Pkcs7
});
console.log(encrypted.toString());
// AES解密
const decrypted = CryptoJS.AES.decrypt(encrypted, key, {
iv,
mode: CryptoJS.mode.CBC,
padding: CryptoJS.pad.Pkcs7
});
console.log(decrypted.toString(CryptoJS.enc.Utf8));
```
以上是使用CryptoJS的基本步骤,如果还有问题,请随时向我提问。
阅读全文