react-create-app脚手架搭建项目,控制台报错Uncaught TypeError: Cannot read property 'forEach'

293 阅读1分钟

通过npm start之后,跳转浏览器显示空白,打开控制台报错,如图:

image.png

这个问题是因为浏览器安装了react-devtools扩展程序导致的,很多人的解决办法就是直接禁用react-devtools,但是治标不治本。

问题根源:react版本问题与dev-tools版本问题

查看react版本等信息: npm info reactoryarn info react

image.png

方法一:

根据报错堆栈信息,找到node_modules/@pmmmwh/react-refresh-webpack-plugin/client/ReactRefreshEntry.js这个文件,找到报错的代码,直接注释导致报错的那一行。

方法二:

现在我使用脚手架创建的react项目版本是^17.0.2,那么,就不应该使用react-devtools的v3版本,应该使用v4以上的版本,附上v4插件地址:www.crx4chrome.com/crx/3068/.

image.png

直接下载这个插件,下载完后,将插件的.crx后缀名改为**.rar**: fmkadmapgofadopljbjfkapdkoienihi-4.10.1-1242020-Crx4Chrome.com.crx ----->> fmkadmapgofadopljbjfkapdkoienihi-4.10.1-1242020-Crx4Chrome.com.rar 然后解压该文件,解压后如下图:

image.png

接着,在谷歌浏览器中打开扩展页面chrome://extensions/,打开开发者模式,选择加载已解压的扩展文件,添加后关闭开发者模式,最好可以重启下浏览器。 最后,运行项目,再也不报错了,当然v4的版本跟v3还是有些差别,再慢慢摸索学习~