#エラー内容
久々に開くプロジェクトをGit cloneしてスタートしようとしたら、突然怒られました。
1年も放置してたので多少環境メンテは必要と思っていましたが、意味不明だったので、私が解決できた方法を残しておきます。
(それぞれの解決法はネット検索で出てきた結果です。先人たちのおかげで生きてる。)
環境
TypeError [ERR_INVALID_ARG_TYPE]: The "path" argument must be of type string. Received undefined
at new NodeError (node:internal/errors:371:5)
at validateString (node:internal/validators:119:11)
at Object.join (node:path:429:7)
at noopServiceWorkerMiddleware (C:\Develop\awesome_webapp\node_modules\react-dev-utils\noopServiceWorkerMiddleware.js:14:26)
at Layer.handle [as handle_request] (C:\Develop\awesome_webapp\node_modules\express\lib\router\layer.js:95:5)
at trim_prefix (C:\Develop\awesome_webapp\node_modules\express\lib\router\index.js:323:13)
at C:\Develop\awesome_webapp\node_modules\express\lib\router\index.js:284:7
at Function.process_params (C:\Develop\awesome_webapp\node_modules\express\lib\router\index.js:341:12)
at next (C:\Develop\awesome_webapp\node_modules\express\lib\router\index.js:275:10)
at launchEditorMiddleware (C:\Develop\awesome_webapp\node_modules\react-dev-utils\errorOverlayMiddleware.js:20:7)
見た感じ、react-dev-utilsとかに問題がありそうですね。そんな感じかなと思って調べ始めたせいで墓穴を掘りました。
念のため、私には効果がなかった解決法も、調べた順番で記載しておきます。
解決法1::react-scriptsのバージョンアップ
まず、react-scriptがpackage.jsonに含まれていない人は、この解決法は関係ないかもです。
npm info react-scripts version
で最新バージョンを調べます。
package.jsonで下記の部分を探します。
"dependencies": {
....
"react-scripts": "x.x.x",
....
バージョンが異なっていたら、最新のバージョンにあげましょう。
package.jsonでバージョンを書き換えて、下記を実行します。
rm -rf node_modules
yarn install
yarn start
解決法2: react-dev-utilsのダウングレード
package.jsonで、react-dev-utils
を探します。
バージョンが、 10.x.xと、10.0.0以上であれば、上記と同じ方法でpackage.jsonを書き換えて、インストールしなおします。
"dependencies": {
....
"rreact-dev-utilss": "10.0.0",
....
rm -rf node_modules
yarn install
yarn start
解決法 3 /webpackDevServer.config.js を修正
./config/webpackDevServer.config.js を確認します。
app.use(noopServiceWorkerMiddleware());
を
app.use(noopServiceWorkerMiddleware('/'));
に変更し、再度yarn start
します。
私は解決法3をやっていなかったらずっとnpm installをやり直す沼にハマっていたことでしょう…
どなたかの参考になれば幸いです。