TypeError [ERR_INVALID_ARG_TYPE]:“ path”参数必须为字符串类型。启动React应用时收到的类型未定义引发

2020/10/24 21:21 · javascript ·  · 0评论

我正在React中的一个项目上工作,遇到了一个让我感到困惑的问题。

每当我运行时yarn start,都会出现此错误:

TypeError [ERR_INVALID_ARG_TYPE]:“路径”参数必须为字符串类型。接收类型未定义

我不知道为什么会这样,如果有人经历过,我将不胜感激。

要解决此问题,只需升级react-scripts软件包(使用来检查最新版本npm info react-scripts version):

  1. 将您的package.json 替换"react-scripts": "^3.x.x""react-scripts": "^3.4.1"(或最新可用版本)
  2. (对于某些情况是可选的)删除您的node_modules文件夹
  3. 运行npm installyarn install

有人报告此问题是由运行引起的npm audit fix(避免它!)。

我也遇到了这个问题,并通过将react-scripts软件包从升级"react-scripts": "3.x.x""react-scripts": "^3.4.1"(或最新的可用版本)来解决。

  1. 删除资料node_modules\
  2. 删除package-lock.json档案
  3. 重写package.json从文件"react-scripts": "3.x.x""react-scripts": "^3.4.1"
  4. 再次安装节点软件包 npm i
  5. 现在,开始项目 npm start

而且有效!!

如果您已退出,这是解决此问题的正确方法:

找到此文件config/webpackDevServer.config.js,然后在此文件中找到以下行:

app.use(noopServiceWorkerMiddleware());

您应该将其更改为:

app.use(noopServiceWorkerMiddleware('/'));

对于我(也许是您大多数人)而言,服务工作者是项目的根源。如果您觉得与众不同,则可以通过基本路径。

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

我们从中弹出react-scripts,因此不能简单地升级package.json条目来解决此问题。

相反,我们这样做:1.)在新目录中,创建一个新项目-> $> npx create-react-app foo-project
2.)然后弹出->
cd ./foo-project && npm run eject
3.)现在将文件从/ foo-project / config复制到主目录的config目录中应用并启动您的开发服务器

希望这可以帮助其他处于类似困境的人。

在安装和删除一些npm软件包后,我才遇到这个问题,花了将近5个小时才弄清楚发生了什么。

我所做的基本上是将src / components复制到一个不同的目录中,然后删除所有节点模块和package-lock.json(如果您在Docker容器中运行应用程序,请删除图像并重建它只是为了安全起见);然后将其重置为我的最后一次提交,然后放回我的src / components然后运行npm i

希望对您有所帮助。

只需将react-scripts更新到最新版本。

yarn add react-scripts@latest

或如果使用NPM

npm install react-scripts@latest
  1. 转到你package.json

  2. 在依赖项中将“ react-scripts”:“ 3.xx”更改为“ react-scripts”:“ ^ 3.4.0”

  3. 重新安装react-scripts: npm I react-scripts

  4. 开始您的项目: npm start

如果您弹出 create-react-app,我建议:

  1. 通过创建一个新的React应用create-react-app
  2. 通过npm run eject或将其弹出yarn eject
  3. 安装缺少的所有软件包package.json
  4. 假设所有代码都位于此文件夹中,请复制src文件夹。
  5. 如果需要,请在configscript文件夹上重做更改

为我工作。

我尝试了上述各种方法,但是自从弹出CSS以来,它们都没有起作用最终应用以下步骤有助于:

  1. react-scripts升级"react-scripts": "3.x.x""react-scripts": "^3.4.0"
  2. 降级react-dev-utils形式"react-dev-utils": "^10.x.x""react-dev-utils": "10.0.0"
  3. 删除node-modules文件夹和package-lock.json/yarn.lock
  4. 重新安装软件包npm install/yarn install

如果您弹出并感到好奇,那么CRA存储库上的此更改就是导致错误的原因。

要解决此问题,您需要应用他们的更改。即最后一组文件:

  • 包/反应脚本/config/paths.js
  • 包/反应脚本/config/webpack.config.js
  • 包/反应脚本/config/webpackDevServer.config.js
  • 包/反应脚本/package.json
  • 包/反应脚本/脚本/build.js
  • 包/反应脚本/脚本/start.js

就个人而言,我认为您应该手动应用更改,因为,除非一直保持所有更改的最新状态,否则您可能会在webpack捆绑包中引入另一个错误(由于依赖项不匹配或其他原因)。

或者,您可以按照Geo Angelopoulos的建议进行操作。这可能需要一段时间,但至少您的项目将与CRA存储库同步(并获得其所有最新增强功能!)。

就我而言,这是因为我(一次reactn安装)已经安装,它还包括自己的React版本(出于某种原因)。

安装后(即使再次卸载后),也会发生此错误。

我只是简单地删除node_modulesnpm install再次运行,就可以了。

请遵循以下步骤。我也遇到了同样的问题。

  1. 删除整个node_modules文件夹。
  2. 删除package-lock.json文件。
  3. npm install npm-install如图所示,运行命令

    显示安装npm的命令

  4. 我们走了.. npm start ... wao

只需删除并重新安装 react-scripts

删除
yarn remove react-scripts
添加
yarn add react-scripts

接着 rm -rf node_modules/ yarn.lock && yarn

  • 切记不要react-scripts定期更新版本
本文地址:http://javascript.askforanswer.com/typeerror-err_invalid_arg_type-pathcanshubixuweizifuchuanleixingqidongreactyingyongshiai.html
文章标签: ,   ,   ,   ,  
版权声明:本文为原创文章,版权归 javascript 所有,欢迎分享本文,转载请保留出处!

文件下载

老薛主机终身7折优惠码boke112

上一篇:
下一篇:

评论已关闭!