[英]React-Native - Error: ReferenceError: SHA-1 for file metro/src/lib/polyfills/require.js is not computed
im getting this error in react-native, and the project cannot start using an android emulator.我在 react-native 中遇到此错误,并且该项目无法使用 android 仿真器启动。 I'm not using Expo, and tried to clean gradlew and delete node_modules and see if it have some errors but nothing have worked for me.我没有使用 Expo,并尝试清理 gradlew 并删除 node_modules 并查看它是否有一些错误,但对我没有任何帮助。
This is the error log i have:这是我的错误日志:
error: ReferenceError: SHA-1 for file /home/logan/.nvm/versions/node/v12.16.1/lib/node_modules/react-native/node_modules/metro/src/lib/polyfills/require.js (/home/logan/.nvm/versions/node/v12.16.1/lib/node_modules/react-native/node_modules/metro/src/lib/polyfills/require.js) is not computed
at DependencyGraph.getSha1 (/home/logan/.nvm/versions/node/v12.16.1/lib/node_modules/react-native/node_modules/metro/src/node-haste/DependencyGraph.js:263:13)
at /home/logan/.nvm/versions/node/v12.16.1/lib/node_modules/react-native/node_modules/metro/src/DeltaBundler/Transformer.js:211:26
at Generator.next (<anonymous>)
at asyncGeneratorStep (/home/logan/.nvm/versions/node/v12.16.1/lib/node_modules/react-native/node_modules/metro/src/DeltaBundler/Transformer.js:46:24)
at _next (/home/logan/.nvm/versions/node/v12.16.1/lib/node_modules/react-native/node_modules/metro/src/DeltaBundler/Transformer.js:66:9)
at /home/logan/.nvm/versions/node/v12.16.1/lib/node_modules/react-native/node_modules/metro/src/DeltaBundler/Transformer.js:71:7
at new Promise (<anonymous>)
at /home/logan/.nvm/versions/node/v12.16.1/lib/node_modules/react-native/node_modules/metro/src/DeltaBundler/Transformer.js:63:12
at Transformer.transformFile (/home/logan/.nvm/versions/node/v12.16.1/lib/node_modules/react-native/node_modules/metro/src/DeltaBundler/Transformer.js:236:7)
at /home/logan/.nvm/versions/node/v12.16.1/lib/node_modules/react-native/node_modules/metro/src/Bundler.js:87:34
I have used this in metro/src/node-haste/DependencyGraph.js, but i don't know if it is the best solution because i will lose it if i delete node_modules again:我在 metro/src/node-haste/DependencyGraph.js 中使用过它,但我不知道它是否是最好的解决方案,因为如果我再次删除 node_modules,我会丢失它:
if (!sha1) {
return getFileHash(resolvedPath)
function getFileHash(file) {
return require('crypto')
.createHash('sha1')
.update(fs.readFileSync(file))
.digest('hex')
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.