【问题标题】:npx create-react-app command returns errornpx create-react-app 命令返回错误
【发布时间】:2020-06-24 05:16:32
【问题描述】:

所以我决定按照教程学习 react。根据我输入的教程:

npm install -g create-react-app@1.5.2

然后我输入:

create-react-app my-app

运行后我输入:

npm start

它抛出了一些错误(我不记得究竟是什么错误。但它类似于 package.json 不包含npm start,也没有包含任何模板) 经过快速谷歌搜索后,我发现不再推荐以前的过程。 根据指南找到here

如果您之前通过npm install -g create-react-app 全局安装了create-react-app,我们建议您卸载该软件包 使用npm uninstall -g create-react-app 确保npx 始终 使用最新版本。

所以我在 cmd 中输入了npm uninstall -g create-react-app。卸载后我关闭了cmd并删除了运行npm install -g create-react-app后创建的文件夹

然后在 cmd 中输入npx create-react-app my-app。但它返回此错误:

npm ERR! code ENOLOCAL
npm ERR! Could not install from "Amin\AppData\Roaming\npm-cache\_npx\4996" as it does not contain a package.json file.

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\Farhan Bin Amin\AppData\Roaming\npm-cache\_logs\2020-06-24T04_44_56_925Z-debug.log
Install for [ 'create-react-app@latest' ] failed with code 1

调试日志如下:

0 info it worked if it ends with ok
1 verbose cli [
1 verbose cli   'C:\\Program Files\\nodejs\\node.exe',
1 verbose cli   'C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js',
1 verbose cli   'install',
1 verbose cli   'create-react-app@latest',
1 verbose cli   '--global',
1 verbose cli   '--prefix',
1 verbose cli   'C:\\Users\\Farhan',
1 verbose cli   'Bin',
1 verbose cli   'Amin\\AppData\\Roaming\\npm-cache\\_npx\\4996',
1 verbose cli   '--loglevel',
1 verbose cli   'error',
1 verbose cli   '--json'
1 verbose cli ]
2 info using npm@6.14.4
3 info using node@v12.16.3
4 verbose npm-session 0eec5b00126c667b
5 silly install loadCurrentTree
6 silly install readGlobalPackageData
7 silly fetchPackageMetaData error for file:Amin\AppData\Roaming\npm-cache\_npx\4996 Could not install from "Amin\AppData\Roaming\npm-cache\_npx\4996" as it does not contain a package.json file.
8 http fetch GET 404 https://registry.npmjs.org/Bin 124ms
9 http fetch GET 304 https://registry.npmjs.org/create-react-app 178ms (from cache)
10 http fetch GET 404 https://registry.npmjs.org/Bin 39ms
11 silly fetchPackageMetaData error for Bin@latest 404 Not Found - GET https://registry.npmjs.org/Bin - Not found
12 silly pacote tag manifest for create-react-app@latest fetched in 193ms
13 timing stage:rollbackFailedOptional Completed in 0ms
14 timing stage:runTopLevelLifecycles Completed in 201ms
15 verbose stack Error: ENOENT: no such file or directory, open 'F:\react\Amin\AppData\Roaming\npm-cache\_npx\4996\package.json'
16 verbose cwd F:\react
17 verbose Windows_NT 10.0.15063
18 verbose argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "install" "create-react-app@latest" "--global" "--prefix" "C:\\Users\\Farhan" "Bin" "Amin\\AppData\\Roaming\\npm-cache\\_npx\\4996" "--loglevel" "error" "--json"
19 verbose node v12.16.3
20 verbose npm  v6.14.4
21 error code ENOLOCAL
22 error Could not install from "Amin\AppData\Roaming\npm-cache\_npx\4996" as it does not contain a package.json file.
23 verbose exit [ 1, true ]

我用谷歌搜索了几个小时,但似乎没有解决这个问题。

更新: 所以似乎只有yarn create react-app my-app 在工作。但 npm/npx 不是。感谢@prisar 提到尝试不同的方法。

【问题讨论】:

  • 如果你看到我的问题,你会看到我按照官方文档,问题仍然存在。

标签: node.js reactjs npm create-react-app


【解决方案1】:

尝试改用npmyarn。 npx缓存似乎有问题。一次,尝试清除缓存。

【讨论】:

  • 所以我尝试使用似乎不起作用的 npm。但是后来使用了纱线,但在 cmd 中它说就像我没有得到许可一样。所以我以管理员权限打开了 power shell,然后输入了yarn create react-app my-app,它正在工作。但仍然不明白为什么 npm/npx 不起作用。
【解决方案2】:

我认为最好的参考是官方建议的指南,

您的机器上需要有 Node >= 8.10 和 npm >= 5.6

所以在确保需求后,尝试卸载全局 create-react-app 并运行 npx 代替。

npx create-react-app my-app

我认为教程使用的是旧的安装 CRA,我可能错了。

【讨论】:

  • 我安装了节点 12.16.3 和 npm 6.14.4。不知道这里有什么问题。
【解决方案3】:

我之前也有这个问题。尝试从根文件夹中删除node_modules、package-lock.json文件并运行

npm cache clean --force && npm install

然后-

npx create-react-app my-app

【讨论】:

    猜你喜欢
    • 2020-08-11
    • 1970-01-01
    • 1970-01-01
    • 2022-01-07
    • 2021-06-09
    • 1970-01-01
    • 1970-01-01
    • 2018-11-05
    • 2022-06-14
    相关资源
    最近更新 更多