uniapp vue3版本引用 jsencrypt加密库报错:“default“ is not exported by……

个人产生这个异常的原因:将历史项目(vue2)的jsencrypt文件复制到新项目(vue3)里直接引用报错。存在兼容问题,需要重新安装vue3版本的jsencrypt

安装依赖

复制代码
npm install jsencrypt

页面引入

js 复制代码
import { JSEncrypt } from 'jsencrypt'

简单封装

js 复制代码
import {
	JSEncrypt
} from 'jsencrypt'
// 密钥对生成 http://web.chacuo.net/netrsakeypair
const publicKey ='你的公钥'
const privateKey = '你的私钥'

// 加密
export function encrypt(txt) {
	const encryptor = new JSEncrypt()
	encryptor.setPublicKey(publicKey) // 设置公钥
	return encryptor.encrypt(txt) // 对数据进行加密
}

// 解密
export function decrypt(txt) {
	const encryptor = new JSEncrypt()
	encryptor.setPrivateKey(privateKey) // 设置私钥
	return encryptor.decrypt(txt) // 对数据进行解密
}

具体使用

js 复制代码
<script>
	import {
		encrypt
	} from '@/utils/rsa/jsencrypt-vue3.js'
	export default {
		data() {
			return {
			}
		},
		methods: {
			startLogin() {		
			    var param = {
					username: 'xxxxx',
					
					// 调用加密方法,完成密码的rsa加密
					password: encrypt('xxxxxx')
				}
			}
		}
	}
</script>

参考资料

uniapp vue3版本 Android 引用 jsencrypt加密库 报错问题 "default" is not exported by,解决方法
前端VUE3使用RSA加密向后端传输密码
微信小程序使用npm方式增加jsencrypt rsa加密验证

相关推荐
Java程序员威哥11 小时前
云原生Java应用优化实战:资源限制+JVM参数调优,容器启动快50%
java·开发语言·jvm·python·docker·云原生
多多*11 小时前
程序设计工作室1月21日内部训练赛
java·开发语言·网络·jvm·tcp/ip
AI殉道师11 小时前
从0开发大模型之实现Agent(Bash到SKILL)
开发语言·bash
skywalk816312 小时前
介绍一下 Backtrader量化框架(C# 回测快)
开发语言·c#·量化
源代码•宸12 小时前
Leetcode—3314. 构造最小位运算数组 I【简单】
开发语言·后端·算法·leetcode·面试·golang·位运算
lbb 小魔仙12 小时前
【Java】深入解析 Java 集合底层原理:HashMap 扩容与 TreeMap 红黑树实现
java·开发语言
FJW02081412 小时前
Python深浅拷贝
开发语言·python
Coder个人博客12 小时前
1233434235
java·开发语言
徐同保12 小时前
开发onlyoffice插件,功能是选择文本后立即通知父页面
开发语言·前端·javascript
Never_Satisfied12 小时前
C#数组去重方法总结
开发语言·c#