私はReactでプロジェクトに取り組んでいて、困った問題に遭遇しました。
実行するたびにyarn start
次のエラーが発生します。
TypeError [ERR_INVALID_ARG_TYPE]:「パス」引数は文字列型でなければなりません。未定義の受信タイプ
なぜこれが起こっているのか私にはわかりません。誰かがこれを経験したことがあれば、感謝します。
私はReactでプロジェクトに取り組んでいて、困った問題に遭遇しました。
実行するたびにyarn start
次のエラーが発生します。
TypeError [ERR_INVALID_ARG_TYPE]:「パス」引数は文字列型でなければなりません。未定義の受信タイプ
なぜこれが起こっているのか私にはわかりません。誰かがこれを経験したことがあれば、感謝します。
回答:
この問題を修正するには、単ににアップグレードします "react-scripts": "^3.4.0"
"react-scripts": "^3.x.x"
を上書き"react-scripts": "^3.4.0"
します早く修正できるといいのですが
3.3.0
ました3.4.0
。奇妙なことに、開発の途中で、理由もなく動作が停止するだけです。
npm audit fix
誰にとっても便利なように、それは実際に実行した後でした。
私もこの問題に直面し、react-scripts
パッケージをから"react-scripts": "3.x.x"
にアップグレードすることでそれを理解しました"react-scripts": "^3.4.0"
node_modules\
フォルダを削除package-lock.json
ファイルを削除package.json
ファイルをから"react-scripts": "3.x.x"
に書き換えます"react-scripts": "^3.4.0"
npm i
npm start
そしてそれはうまくいきます!
これを排除した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
。
お役に立てば幸いです。
排出された 場合は、次のことをおcreate-react-app
勧めします。
create-react-app
。npm run eject
またはから排出しますyarn eject
ます。package.json
。私のために働いた。
上記のさまざまな方法を試しましたが、CSS を取り出したため、どれも機能しませんでした。最後に次の手順を適用すると役立ちました。
react-scripts
から"react-scripts": "3.x.x"
にアップグレード"react-scripts": "^3.4.0"
react-dev-utils
フォーム"react-dev-utils": "^10.x.x"
をにダウングレードしています"react-dev-utils": "10.0.0"
node-modules
フォルダを削除してpackage-lock.json
/yarn.lock
npm install
/yarn install
イジェクトして興味がある場合は、CRAリポジトリのこの変更がエラーの原因です。
それを修正するには、それらの変更を適用する必要があります。つまり、最後のファイルセット:
個人的には、変更を手動で適用する必要があると思います。すべての変更を最新の状態に保っていないと、(依存関係の不一致などのため)Webpackバンドルに別のバグが発生する可能性があるからです。
または、ジオアンジェロプロスが提案したことを実行できます。しばらく時間がかかるかもしれませんが、少なくともあなたのプロジェクトはCRAリポジトリと同期しています(そして、すべての最新の機能強化を入手できます!)。