iMaldway
iMaldway
  • 发布:2019-02-11 10:55
  • 更新:2022-08-24 15:21
  • 阅读:12303

【已解决】uni-app中使用jsencrypt会导致项目报错

分类:uni-app

项目需求需要使用jsencrypt进行(rsa)加密

经测试,在项目中引入jsencrypt会导致下面报错

2019-02-11 10:55 负责人:无 分享
已邀请:
iMaldway

iMaldway (作者)

1.首先这是目录解构,你得npm安装下jsencrypt(具体百度)

2.然后在项目中引用


3.使用jsencrypt


PS:直接使用npm安装的会报错,原因是jsencrypt在UNI-APP环境下没有空值校验,附件为修改过的jsencrypt(直接替换即可)。
希望能帮助到你。

  • chao301

    好用 赞一个 复制替换jsencrypt就好

    2019-08-27 17:34

  • 曹king

    2019-12-02 11:26

  • m***@163.com

    这个挺奇怪 引用一定要放到main.js里才可以么 我放到自己定义的util里就不行,只好放到main.js里 然后在 util里又引了一遍vue才行

    2020-03-04 18:19

  • 1***@163.com

    为什么用encrypt方法加密完就变成了“false”啊

    2020-06-24 14:56

风华依然盛世

风华依然盛世 - 未来的事业决定于你现在空余时间所做的事

编译后都是报 jsencrypt.js 里边未定义的错

iMaldway

iMaldway (作者)

已解决,问题出在jsencrypt本身,没有做对应的空值判断,修改下源码即可。

面朝大海2019

面朝大海2019

为什么这么操作还是报Uncaught TypeError: Cannot read property '$jsencrypt' of undefined呢?文件已经替换了

  • iMaldway (作者)

    这里应该是this的指向问题吧?

    2019-10-28 15:22

  • 6***@qq.com

    回复 iMaldway: Cannot set property 'default_key_size' of undefined那这个未定义怎么解决

    2019-10-30 17:26

  • 面朝大海2019

    回复 iMaldway: 已经解决了,但是运行到小程序又报错了。

    2019-11-06 08:47

  • 8***@qq.com

    回复 面朝大海2019: 解决了吗,老哥

    2020-01-03 11:21

面朝大海2019

面朝大海2019

报这个错在小程序中

6***@qq.com

6***@qq.com

reportJSException >>>> exception function:createInstanceContext, exception:white screen cause create instanceContext failed,check js stack ->TypeError: undefined is not an object (evaluating 'new (void 0).$jsencrypt')

这是啥情况

1***@qq.com

1***@qq.com

为什么我的会报错,而且还出现几种
reportJSException >>>> exception function:createInstanceContext, exception:white screen cause create instanceContext failed,check js stack ->SyntaxError: Invalid escape in identifier: 'J9\'
14:32:45.095 getTemplateInfo== template md5 eeec26eed37970db585b19a1f0bbd1bd length 2213166 base64 md5 7uwm7tN5cNtYWxmh8LvRvQ== response header {"templateSourceBase64MD5":["7uwm7tN5cNtYWxmh8LvRvQ=="],"templateSourceMD5":["eeec26eed37970db585b19a1f0bbd1bd"]}

reportJSException >>>> exception function:createInstanceContext, exception:white screen cause create instanceContext failed,check js stack ->TypeError: undefined is not an object (evaluating 'modules[moduleId].call')
14:35:36.978 getTemplateInfo== template md5 77ec2631841b1f8b4e204b947c9c0b5c length 2213165 base64 md5 d+wmMYQbH4tOIEuUfJwLXA== response header {"templateSourceBase64MD5":["d+wmMYQbH4tOIEuUfJwLXA=="],"templateSourceMD5":["77ec2631841b1f8b4e204b947c9c0b5c"]}

  • 曹king

    解决了吗兄台,我也遇见同样的问题

    2019-12-02 18:28

  • z***@126.com

    问题解决了吗?我的也是h5没有问题,APP就出现这个问题

    2019-12-29 09:18

  • 1***@qq.com

    没有,功能阁置了

    2019-12-31 12:21

  • AimerQAQ

    貌似升级到2.5.1会有这个问题,之前的不会

    2020-01-09 09:29

  • l***@gmail.com

    也是这样

    2020-02-13 15:54

  • l***@gmail.com

    我又是试了一下 把v3编译器关了就行了

    2020-02-13 16:35

  • h***@qq.com

    回复 l***@gmail.com: 哪里关闭呢?

    2020-02-26 18:10

  • l***@gmail.com

    回复 h***@qq.com: 你可以试试用wx_rsa.js 代替试试看

    2020-03-01 16:54

  • 1***@qq.com

    找到办法了,https://ext.dcloud.net.cn/plugin?id=1389这是jsencrypt插件,用这个实现了

    2020-04-10 11:05

  • j***@163.com

    回复 1***@qq.com: 感谢,我去复制了一下就行了

    2021-08-30 10:06

1***@qq.com

1***@qq.com

完美,感谢

w***@163.com

w***@163.com

简单粗暴点:去到node_modules/jsencrypt/bin目录中打开jsencrypt.js文件,删除navigator相关的内容即可,有个判断navigator.userAgent的,直接改为true就行

1***@qq.com

1***@qq.com

找到办法了,https://ext.dcloud.net.cn/plugin?id=1389这是jsencrypt插件,用这个实现了

蹦豆儿

蹦豆儿

为啥encrypt.encrypt(STATE)返回的是false

3***@qq.com

3***@qq.com - 莫名其妙

为啥encrypt.encrypt(STATE)返回的是false

讯诺网络

讯诺网络 - 内蒙古讯诺网络技术有限公司

下载一个看看

l***@126.com

l***@126.com

我的PC运行没问题,在手机上调试运行报错TypeError: Cannot read property 'addEventListener' of undefined

  • 夕心o

    一样的报错信息, 请问解决没?

    2021-06-16 19:53

  • 1***@qq.com

    我也是报这个错误,请问解决了吗?

    2021-12-21 13:58

1***@qq.com

1***@qq.com

附件呢?

小当家

小当家 - 前端

多谢 暂时看了没问题,不知道用起来会有问题没

该问题目前已经被锁定, 无法添加新回复