首页 > 解决方案 > 导入加密时出错 - 尝试更新 React Native 中的一些模块,现在出现加密错误

问题描述

我试图更新react-navigation,为此我删除了我的node_modules文件夹。

但是后来它抱怨了crypto,所以我恢复了我的更改package.json,删除了我的package-lock.json,但不幸的是无法获取我的旧文件夹,node_modules因为我永久删除了它。

有人知道如何解决这个问题吗?

已尝试此页面中所有可能的解决方案,例如删除缓存,手动添加模块--save,但不幸的是没有运气。

While trying to resolve module `crypto` from file `/PATH/TO/PROJECT/node_modules/crypto-js/core.js`, the package `/PATH/TO/PROJECT/node_modules/crypto/package.json` was successfully found. However, this package itself specifies a `main` module field that could not be resolved (`/PATH/TO/PROJECT/node_modules/crypto/index.js`. Indeed, none of these files exist:

  * `/PATH/TO/PROJECT/node_modules/crypto/index.js(.native||.ios.expo.ts|.native.expo.ts|.expo.ts|.ios.expo.tsx|.native.expo.tsx|.expo.tsx|.ios.expo.js|.native.expo.js|.expo.js|.ios.expo.jsx|.native.expo.jsx|.expo.jsx|.ios.ts|.native.ts|.ts|.ios.tsx|.native.tsx|.tsx|.ios.js|.native.js|.js|.ios.jsx|.native.jsx|.jsx|.ios.json|.native.json|.json|.ios.wasm|.native.wasm|.wasm)`
  * `/PATH/TO/PROJECT/node_modules/crypto/index.js/index(.native||.ios.expo.ts|.native.expo.ts|.expo.ts|.ios.expo.tsx|.native.expo.tsx|.expo.tsx|.ios.expo.js|.native.expo.js|.expo.js|.ios.expo.jsx|.native.expo.jsx|.expo.jsx|.ios.ts|.native.ts|.ts|.ios.tsx|.native.tsx|.tsx|.ios.js|.native.js|.js|.ios.jsx|.native.jsx|.jsx|.ios.json|.native.json|.json|.ios.wasm|.native.wasm|.wasm)`
ERROR
10:34
Building JavaScript bundle: error

非常感谢任何帮助。

我正在使用我认为正在使用的aws-sdk 模块crypto-js,这就是导致此问题的原因。

标签: react-nativeaws-sdkcryptojs

解决方案


不要使用这个版本!拜托,换个新版本! 官方文档里是这么说的。

请使用较新的版本4.0.0

crypto-jsnpm 包


推荐阅读