首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >React.js中不支持crypto.getRandomValues()

React.js中不支持crypto.getRandomValues()
EN

Stack Overflow用户
提问于 2021-09-09 12:31:17
回答 1查看 651关注 0票数 0

我们有一个npm包供我们的团队使用,里面我们正在使用这个uuidjs。现在我已经在我的Create-React-App上安装了这个自定义的npm包,它正在使用testing-library进行测试。

当我测试从这个具有uuidjs的自定义包中导入文件的组件时,我得到以下错误:

代码语言:javascript
运行
复制
crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported

我知道这个问题的答案是install react-native-get-random-values。但我的困惑是,我可以在使用React.js的CRA中安装它吗?react-native和它有什么关系,还是它的独立性?

EN

回答 1

Stack Overflow用户

发布于 2021-09-09 12:58:41

问题

当您运行测试时,我怀疑您是在运行Node.js的测试环境中运行它。crypto.getRandomValues仅在web API中可用。在crypto下的Node中不存在,请参考Node的documentation on crypto。Node确实提供了一个具有getRandomValuesweb crypto API,但是uuid库不会知道它。

解决方案

您可以自己模拟或填充crypto.getRandomValues,请参阅:How to use Jest to test functions using crypto or window.msCrypto

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69118216

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档