vue3-encryption-plugin
Advanced tools
Comparing version 1.0.6 to 1.0.7
{ | ||
"name": "vue3-encryption-plugin", | ||
"version": "1.0.6", | ||
"version": "1.0.7", | ||
"description": "✈️🔖🔖 pinia插件加密、实现本地数据加密解密", | ||
@@ -5,0 +5,0 @@ "main": "src/index.js", |
@@ -1,34 +0,29 @@ | ||
// 导入所需的加密库 | ||
import CryptoJS from "crypto-js"; | ||
import { provide } from "vue"; | ||
// 定义插件接口 | ||
const EncryptionPlugin = { | ||
install: (app, options) => { | ||
// 加密密钥,默认使用一个固定值,你可以根据实际情况进行配置 | ||
const key = options && options.key ? options.key : "my-secret-key"; | ||
// 加密函数 | ||
const encryptData = (data, key) => { | ||
const encryptedData = CryptoJS.AES.encrypt( | ||
JSON.stringify(data), | ||
key | ||
).toString(); | ||
return encryptedData; | ||
}; | ||
// 加密函数 | ||
const encryptData = (data) => { | ||
const encryptedData = CryptoJS.AES.encrypt( | ||
JSON.stringify(data), | ||
key | ||
).toString(); | ||
return encryptedData; | ||
}; | ||
// 解密函数 | ||
const decryptData = (encryptedData, key) => { | ||
const decryptedBytes = CryptoJS.AES.decrypt(encryptedData, key); | ||
const decryptedData = JSON.parse(decryptedBytes.toString(CryptoJS.enc.Utf8)); | ||
return decryptedData; | ||
}; | ||
// 解密函数 | ||
const decryptData = (encryptedData) => { | ||
const decryptedBytes = CryptoJS.AES.decrypt(encryptedData, key); | ||
const decryptedData = JSON.parse( | ||
decryptedBytes.toString(CryptoJS.enc.Utf8) | ||
); | ||
return decryptedData; | ||
const EncryptionPlugin = { | ||
install: (app, { key = "my-secret-key" } = {}) => { | ||
// 为组件提供插件 | ||
app.provide("encryptionPlugin", { | ||
encryptData: (data) => encryptData(data, key), | ||
decryptData: (data) => decryptData(data, key), | ||
}); | ||
app.config.globalProperties.$encryptionPlugin = { | ||
encrypt: (data) => encryptData(data, key), | ||
decrypt: (data) => decryptData(data, key), | ||
}; | ||
app.config.globalProperties.$encrypt = encryptData; | ||
app.config.globalProperties.$decrypt = decryptData; | ||
provide("encryptionPlugin", { | ||
encryptData, | ||
decryptData, | ||
}); | ||
}, | ||
@@ -35,0 +30,0 @@ }; |
5826
28