sjcl
sjcl copied to clipboard
Crypto error
After install react-native-bip39
to my react-native app, I get this error:
error: bundling failed: Error: While trying to resolve module `crypto` from file `/wallet-frontend/node_modules/sjcl/sjcl.js`, the package `/wallet-frontend/node_modules/crypto/package.json` was successfully found. However, this package itself specifies a `main` module field that could not be resolved (`/wallet-frontend/node_modules/crypto/index.js`. Indeed, none of these files exist:
* `/wallet-frontend/node_modules/crypto/index.js(.native||.ios.js|.native.js|.js|.ios.json|.native.json|.json)`
* `/wallet-frontend/node_modules/crypto/index.js/index(.native||.ios.js|.native.js|.js|.ios.json|.native.json|.json)`
at ResolutionRequest.resolveDependency (/wallet-frontend/node_modules/metro/src/node-haste/DependencyGraph/ResolutionRequest.js:92:15)
at DependencyGraph.resolveDependency (/wallet-frontend/node_modules/metro/src/node-haste/DependencyGraph.js:237:485)
at Object.resolve (/wallet-frontend/node_modules/metro/src/lib/transformHelpers.js:116:25)
at dependencies.map.result (/wallet-frontend/node_modules/metro/src/DeltaBundler/traverseDependencies.js:298:29)
at Array.map (<anonymous>)
at resolveDependencies (/wallet-frontend/node_modules/metro/src/DeltaBundler/traverseDependencies.js:294:16)
at /wallet-frontend/node_modules/metro/src/DeltaBundler/traverseDependencies.js:159:33
at Generator.next (<anonymous>)
at step (/wallet-frontend/node_modules/metro/src/DeltaBundler/traverseDependencies.js:239:307)
at /wallet-frontend/node_modules/metro/src/DeltaBundler/traverseDependencies.js:239:467
"dependencies": { "assert": "^1.4.1", "crypto": "^1.0.1", "react": "16.4.1", "react-native": "0.56.0", "react-native-bip39": "^2.3.0", "stream": "^0.0.2" }
Please help me out on this
This is cause crypto is a core node module which is not available in react native.
@mdev0730 you can use https://github.com/tradle/rn-nodeify to patch this so that it uses react-native-crypto
instead