首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我如何以一种理智的方式来管理反应和其他包呢?

我如何以一种理智的方式来管理反应和其他包呢?
EN

Stack Overflow用户
提问于 2016-12-02 13:44:15
回答 1查看 159关注 0票数 0

背景

我试图让我的AirBnB衬里开始工作,并决定卸载我的npm软件包,以便重新安装我的package.json文件。

我所做的

我运行bash命令:

代码语言:javascript
复制
npm uninstall `ls -1 node_modules | tr '/\n' ' '`

在此之后,我遵循了代码库的标准安装过程,即只在正确的目录中安装NPM。我很肯定我做对了。

意外发生的事

当我运行Webpack设置npm start时,一切都很正常,直到我得到了以下错误:

代码语言:javascript
复制
to be executed: nodemon --exec babel-node bin/server --no_debug
[nodemon] 1.11.0
[nodemon] to restart at any time, enter `rs`
[nodemon] watching: *.*
[nodemon] starting `babel-node bin/server --no_debug`
  app:config Creating default configuration. +0ms
  app:config Looking for environment overrides for NODE_ENV "development". +105ms
  app:config Found overrides, applying to default configuration. +6ms
  app:webpack:config Create configuration. +727ms
  app:webpack:config Enable plugins for live development (HMR, NoErrors). +1ms
  app:server:webpack-dev Enable webpack dev middleware. +385ms
  app:server:webpack-hmr Enable Webpack Hot Module Replacement (HMR). +38ms
  app:bin:server Server is now running at http://172.20.10.2:3000. +9ms
  app:bin:server Server accessible via localhost:3000 if you are using the project defaults. +0ms
webpack built b6bb9c1f12e4a68bce6a in 9735ms
Hash: b6bb9c1f12e4a68bce6a
Version: webpack 1.13.3
Time: 9735ms
                             Asset     Size  Chunks       Chunk Names
       app.b6bb9c1f12e4a68bce6a.js   1.9 MB       0       app
    vendor.b6bb9c1f12e4a68bce6a.js   664 kB       1       vendor
   app.b6bb9c1f12e4a68bce6a.js.map  2.23 MB       0       app
vendor.b6bb9c1f12e4a68bce6a.js.map   808 kB       1       vendor

ERROR in ./~/react-dom/lib/ReactDOMUnknownPropertyHook.js
Module not found: Error: Cannot resolve module 'react/lib/ReactComponentTreeHook' in /Users/pedrofigueiredo/Documents/hs/src/healthsite/react/frontend/node_modules/react-dom/lib
 @ ./~/react-dom/lib/ReactDOMUnknownPropertyHook.js 15:29-72

ERROR in ./~/react-dom/lib/ReactDOMNullInputValuePropHook.js
Module not found: Error: Cannot resolve module 'react/lib/ReactComponentTreeHook' in /Users/pedrofigueiredo/Documents/hs/src/healthsite/react/frontend/node_modules/react-dom/lib
 @ ./~/react-dom/lib/ReactDOMNullInputValuePropHook.js 13:29-72

ERROR in ./~/react-dom/lib/ReactDOMInvalidARIAHook.js
Module not found: Error: Cannot resolve module 'react/lib/ReactComponentTreeHook' in /Users/pedrofigueiredo/Documents/hs/src/healthsite/react/frontend/node_modules/react-dom/lib
 @ ./~/react-dom/lib/ReactDOMInvalidARIAHook.js 14:29-72

ERROR in ./~/react-dom/lib/ReactDebugTool.js
Module not found: Error: Cannot resolve module 'react/lib/ReactComponentTreeHook' in /Users/pedrofigueiredo/Documents/hs/src/healthsite/react/frontend/node_modules/react-dom/lib
 @ ./~/react-dom/lib/ReactDebugTool.js 16:29-72

ERROR in ./~/react-dom/lib/ReactChildReconciler.js
Module not found: Error: Cannot resolve module 'react/lib/ReactComponentTreeHook' in /Users/pedrofigueiredo/Documents/hs/src/healthsite/react/frontend/node_modules/react-dom/lib
 @ ./~/react-dom/lib/ReactChildReconciler.js 29:27-70 37:31-74

ERROR in ./~/react-dom/lib/flattenChildren.js
Module not found: Error: Cannot resolve module 'react/lib/ReactComponentTreeHook' in /Users/pedrofigueiredo/Documents/hs/src/healthsite/react/frontend/node_modules/react-dom/lib
 @ ./~/react-dom/lib/flattenChildren.js 26:27-70 42:33-76

ERROR in ./~/react-dom/lib/checkReactTypeSpec.js
Module not found: Error: Cannot resolve module 'react/lib/ReactComponentTreeHook' in /Users/pedrofigueiredo/Documents/hs/src/healthsite/react/frontend/node_modules/react-dom/lib
 @ ./~/react-dom/lib/checkReactTypeSpec.js 29:27-70 71:37-80
webpack: bundle is now VALID.

它似乎与react版本有关,但我很难相信,因为我没有更改我的package.json文件中的任何内容。

以下是供参考的相关部分:

代码语言:javascript
复制
  "dependencies": {

    [...]

    "react": "15.0.1",
    "react-dom": "^15.0.0",
    "react-redux": "^4.0.0",
    "react-router": "^2.2.0",
    "react-router-redux": "^4.0.0",

我该怎么解决这个问题?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-12-05 10:45:42

考虑使用纱线作为NPM的替代方案。same通过创建一个yarn.lock文件提供确定性安装,该文件确保在不同时间安装在不同机器上的deps都解析为相同的版本,类似于npm install --save-exact foo

运行yarn (yarn install的缩写)相当于rm -rf node_modules && npm install,这是解决npm问题的第一步,正如@Yan所建议的那样。

纱线的安装冲突也将与npm不同,这可能使我们更容易看出哪一种依赖关系是一个问题。在您的例子中,搜索“无法解决模块”and /lib/ReactComponentTreeHook意味着react热加载程序可能是一个问题,但是如果不看到整个依赖项列表和相关的安装错误,很难判断。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40933638

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档