创建反应原生项目时发现'不变'错误
我刚刚开始反应原生。我尝试了documentation中提到的事情。创建反应原生项目时发现'不变'错误
但是在运行react-native init AwesomeProject
。
我得到以下错误。
module.js:328
throw err;
^
Error: Cannot find module 'invariant'
at Function.Module._resolveFilename (module.js:326:15)
at Function.Module._load (module.js:277:25)
at Module.require (module.js:354:17)
at require (internal/module.js:12:17)
at Object.<anonymous> (/Users/aragorn/AwesomeProject/node_modules/react-native/packager/react-packager/src/node-haste/Module.js:18:19)
at Module._compile (module.js:410:26)
at loader (/Users/aragorn/AwesomeProject/node_modules/babel-register/lib/node.js:144:5)
at Object.require.extensions.(anonymous function) [as .js] (/Users/aragorn/AwesomeProject/node_modules/babel-register/lib/node.js:154:7)
at Module.load (module.js:344:32)
at Function.Module._load (module.js:301:12)
我用下面的配置在Mac OSX(优胜美地)试图这样的: -
- 的NodeJS - V4.3.0
- NPM - 12年2月14日
- 反应母语-CLI- 1.3.0
有人可以帮助我吗?
我通过完全卸载节点解决了这个问题。我安装了Mac上的网络包节点,所以我需要做手工:
重新安装与酿造Manual:
sudo rm -rf /usr/local/{bin/{node,npm},lib/node_modules/npm,lib/node,share/man/*/node.*}
Brew:
brew uninstall node
:
brew install node
我这样做对链接时收到错误。我想:
brew link node
brew link --overwrite node
我因上述sudo rm
有一个权限错误,最有可能的。我不确定这是否会破坏任何内容,但这是我在其他主题上找到的解决方案。
sudo chown -R $USER /usr/local
然后brew link --overwrite node
工作。然后重新安装反应原生react-native init
然后创建项目。
我希望这会有所帮助。
看看这个问题:https://github.com/facebook/react-native/issues/11327。
我试图按照rogueSnake的建议:
npm i --save-dev invariant
,并为我工作
这为我工作npm i -g invariant
你能解释你的答案吗? – Zulu
我一直跟Harkirat Salija一样困扰。经过一番搜索后,我从ErmannoS发现了这个答案:'npm i --save-dev invariant'。但我决定尝试在全局'npm i -g invariant'上安装'invariant'。我做完这些后,我的项目成功创建,没有任何错误。 – devenviron
我在Mac上同样的错误,但这种方法并没有为我工作... – ErmannoS