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

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

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

我不知道为什么会这样。


当前回答

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

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

为我工作。

其他回答

要解决这个问题,只需升级react-scripts包(用npm info react-scripts version检查最新版本):

替换在你的包里。Json "react-scripts": "^3.x。X "和"react-scripts": "^3.4.1"(或最新可用版本) 删除你的node_modules文件夹 运行npm install或yarn install

一些人报告说这个问题是由运行npm审计修复引起的(避免它!)

只需将反应脚本更新到最新版本。

yarn add react-scripts@latest

或者如果使用NPM

npm install react-scripts@latest

将HOME环境变量设置为适当的值为我修复了这个问题。

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

npm i -g npm-reinstall
reinstall react-scripts

这与react无关,正如所指定的错误一样,undefined不被接受为path参数。确保没有将变量传递给path。恰巧未定义或为空的连接。 例如:

const {path} = require('path'); 
let arg = undefined;
let mypath = path.join(__dirname, arg);

// The same error would occur.