我正在用React做一个项目,遇到了一个让我难住的问题。

当我运行yarn start时,我得到这个错误:

TypeError [ERR_INVALID_ARG_TYPE]: "path"参数必须是类型 字符串。接收类型未定义

我不知道为什么会这样。


当前回答

运行npm i react-dev-utils@10.0.0解决了我的问题。

其他回答

在同一个目录包里。json, package-lock。Json和yarn.lock。它帮助我删除纱线。锁目录。尽管我不想使用纱线,但它还是以某种方式添加到我的项目中

在我的例子中,我之前改变了文件夹路径,然后只有我在使用npm start时得到了这个错误。

因此,我将文件夹路径C:\Users\User\Documents\### Coding\todo-app更改为C:\Users\User\Documents\Coding\todo-app,然后它就工作了。

我认为问题是在文件夹名称中使用了这些特殊字符。

如果你有一个弹出的create-react-app,我建议:

通过Create - React -app创建一个新的React应用。 通过npm run Eject或yarn Eject来弹出它。 安装package.json中缺少的所有包。 复制src文件夹,假设所有代码都位于该文件夹中。 如果需要,重做配置和脚本文件夹上的更改。

为我工作。

我们从react-scripts中弹出,因此不能简单地升级包。Json条目来修复这个问题。

相反,我们这样做了:

在新目录下创建一个新项目-> $> NPX create-react-app foo-project 然后弹出它-> CD ./foo-project && NPM运行弹出 现在将/foo-project/config中的文件复制到我们的主应用程序的config目录中,并启动您的开发服务器

希望这能帮助到其他有类似困境的人。

我不想升级react-scripts,所以我使用第三方的重新安装npm模块来重新安装它,它工作了。

npm i -g npm-reinstall
reinstall react-scripts