安装 reactjs 时出错:解析附近时 JSON 输入意外结束出错

IT技术 node.js reactjs npm installation failed-installation
2021-04-12 06:22:43

我尝试使用 1)npx create-react-app my-app和 2)在终端中使用两个不同的命令通过节点安装 reactjsnpx create-react-app app

但两者都产生了如下所示的相同错误:

安装软件包。这可能需要几分钟时间。

使用 cra-template 安装 react、react-dom 和 react-scripts...

npm 错误!解析 '....1","object-hash":"^1' 附近时 JSON 输入意外结束

npm 错误!可以在以下位置找到此运行的完整日志:

npm 错误!C:\Users\David\AppData\Roaming\npm-cache_logs\2020-02-12T03_53_37_836Z-debug.log

正在中止安装。

npm install --save --save-exact --loglevel 错误 react react-dom react-scripts cra-template has failed。

我尝试卸载并重新安装节点,并尝试安装不同的旧版本 reactjs,但仍然遇到相同的错误。另外,我尝试清除节点缓存,然后通过npm cache clear --force然后再次验证它npm cache verify但仍然没有任何运气。任何帮助将不胜感激。

更详细的日志显示在底部:

203 愚蠢的 saveTree`--react@16.12.0

204 详细堆栈 SyntaxError:在 '....1" 附近解析时 JSON 输入意外结束,"object-hash":"^1'

JSON.parse () 中的 204 详细堆栈

parseJson 中的 204 详细堆栈(C:\Program Files\nodejs\node_modules\npm\node_modules\json-parse-better-errors\index.js:7:17)

204 详细堆栈在 C:\Program Files\nodejs\node_modules\npm\node_modules\node-fetch-npm\src\body.js:96:50

processTicksAndRejections (internal/process/task_queues.js:97:5) 上的 204 详细堆栈

205 详细 cwd C:\Users\David\Desktop\React\my-app

206 详细的 Windows_NT 10.0.17763

207 详细 argv "C:\Program Files\nodejs\node.exe" "C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js" "install" "--save" "--save-精确的”“--loglevel”“错误”“react”“reactdom”“react脚本”“cra模板”

208 详细节点 v13.8.0

209 详细的 npm v6.13.6

210 错误 JSON 输入在 '....1" 附近解析时意外结束,"object-hash":"^1'

211 详细退出 [1, 真]

6个回答

尝试在您的终端中运行它:

npm cache clean --force

并重做你正在做的事情

天哪。就在我们都认为rm -rf node_modules && npm i已经够好了的时候……
2021-05-30 06:22:43
是的,我花了 2 天的时间来解决这个问题
2021-06-06 06:22:43
不敢相信,在我发现这个之前,我花了几个小时与 npm 作斗争。我实际上认为我的项目有问题。
2021-06-20 06:22:43

使用节点包管理器安装纱线为我解决了这个问题。打开命令提示符并输入:

npm install -g yarn
杰出的!我完全忘记了纱线,并在 npm 上浪费了我的一天。
2021-06-15 06:22:43
是的,它与纱线一起工作,npm 有很多问题
2021-06-16 06:22:43

解决方案:

npm cache clean --force

然后再次尝试创建您的应用程序(创建react应用程序时在此处)或安装您将要安装的内容。

create-react-app myproject

(创建react app)【不同操作可能出现的相同npm问题】

npm install -g @angular/cli@latest

(安装 angular cli(或安装其他任何东西))

它会起作用。

解释:

这是一个与 npm 相关的问题,它与缓存损坏有关。即使在较新版本的 npm 中,它们实现了自我修复,通常可以保证不会损坏,但似乎效率不高。 在此处输入图片说明 强制清理缓存解决了问题。

解析具有 json 格式的缓存文件之一时会发生错误。缓存位于 ~/.npm/_cacache(在 linux 中)和 %AppData%/npm-cache(在 Windows 中)。对于我当前的 npm 版本,当我检查时,有三个目录。
在此处输入图片说明

如果你检查第一个或第二个,结构如下 在此处输入图片说明

每个缓存文件都有一个 json 格式(以及解析的内容) 在此处输入图片说明

这是文档中的一个很好的链接:https : //docs.npmjs.com/cli/cache

[更新]此外,如果这没有解决它,您可以在此处查看此答案https://stackoverflow.com/a/50191315/7668448它显示了如何更改 npm 注册表,这可能会有所帮助。检查并查看。

我有同样的问题,但 npm cache clean --force 对我不起作用。

我所做的是清洁我的电脑

现在使用我的清洁器(CCleaner)和 npm install 工作。我这样做是因为我卸载 node.js 后出现问题,因为我想在我的 PC 上安装 nvm-windows ( https://docs.microsoft.com/en-us/windows/nodejs/setup-on-windows ) ,但在我这样做之后,我认为在我使用 nvm 安装节点后,一些文件和文件夹会留下冲突,因此 npm install 不起作用。所以我认为清洁我的电脑会解决这个问题,它确实做到了。

这些只是我的想法。希望对某人有所帮助。

你会尝试用纱线代替 npm
2021-06-02 06:22:43

问题解决使用:

npm 缓存清理 --force :/