我正在尝试了解如何将或要求(不确定是哪个!但我尝试了两者,结果相同)节点模块到我的反应原生项目中。
具体来说,我正在尝试包含node-craigslist。
我遇到以下错误:
(node:82382) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 2491): UnableToResolveError: Unable to resolve module url from /Users/fogonthedowns/hack/js/react-native/AwesomeProject/node_modules/node-craigslist/dist/index.js: Module does not exist in the module map or in these directories:
/Users/fogonthedowns/hack/js/react-native/AwesomeProject/node_modules
, /Users/fogonthedowns/node_modules
This might be related to https://github.com/facebook/react-native/issues/4968
To resolve try the following:
1. Clear watchman watches: `watchman watch-del-all`.
2. Delete the `node_modules` folder: `rm -rf node_modules && npm install`.
3. Reset packager cache: `rm -fr $TMPDIR/react-*` or `npm start -- --reset-cache`.
我的反应版本是:
~/hack/js/react-native/AwesomeProject$ react-native --version
react-native-cli: 2.0.1
react-native: 0.40.0
我的索引.js在这里。
我什么都试过了。反馈中的所有建议,我什至尝试在全球范围内安装 node-craigslist:
npm install -g node-craigslist
然后从头开始重建。 node-craigslist 显然包含在我的 node-modules 文件夹中。所以我不确定我做错了什么。
如何将节点模块包含在 react 本机应用程序中?
在这种情况下,require和导入有什么区别?
如何将node-craigslist包含在反应本机应用程序中而不会出错?
是在 React Native 0.39 中引入的。尝试重新启动打包程序服务器。如果这没有帮助,请按照错误描述中的说明进行操作:
- 清晰的守望者手表:
watchman watch-del-all
.- 删除
node_modules
文件夹:rm -rf node_modules && npm install
。- 重置打包程序缓存:
rm -fr $TMPDIR/react-*
或npm start -- --reset-cache
。
import
就像现代(es2015)版本的require
。