如何查看react-native node_modules更改

时间:2017-01-09 19:00:05

标签: javascript react-native watchman react-native-cli

当我运行react-native startnpm start时,打包者启动并提示Looking for JS files in /Users/map/repos/myrepo/

我启用了热重装。当我更改位于/Users/map/repos/myrepo/node_modules/react-native/内的文件似乎检测到更改时,但是如果我编辑第三方存储库中的文件,如/Users/map/repos/myrepo/node_modules/react-native-menu/,看起来看守员没有检测到更改。

我刚刚将项目中的React Native升级到0.39,我认为这不是之前的默认行为。我已在react-packager/src/node-haste/index.js中设置了一些日志记录,react-native-menu中似乎包含hasteFSFiles个文件,但未触发change事件。

我尝试删除node_modules并重新安装,清理守望者状态和其他没有运气。

2 个答案:

答案 0 :(得分:6)

好的,看起来他们在版本0.39中重新编写了React Native packager,尽管这个bug仍然存在于v0.40中。在有正式修复之前,如果要在node_modules内检测到库的更改,则需要修改node_modules/react-native/packager/defaults.js并将项目名称添加到providesNodeModules,如下所示:

exports.providesModuleNodeModules = [ 'react-native', 'react-native-windows', 'react-native-menu', ];

报告此问题的问题可在此处找到: https://github.com/facebook/react-native/issues/11301

答案 1 :(得分:4)

另一个解决方案是使用其他参数启动反应native packager

npm run start -- --providesModuleNodeModules react-native,{any_node_module}

与我一起使用RN v0.42.0