Uncaught TypeError: Super expression must either be null or a function, not
undefined particles.js:668
一年前のReact Appをバージョンアップしようとしたが、
このエラーで本番環境のみ、白画面になり時間を消費しました。
検索しても情報が1件しかないので共有します。
結論を先に言うと問題は”react-particles-js”のバージョンをあげたことにより起きていました。
検証して広義ではコードの問題なんだけど、
単純にバージョンを下げれば動くということです。
私の場合はReact本体側の問題ではありませんでした。
時間があれば古い実装を改修しましょう。
It means that simply lowering the version will work.
In my case, it wasn’t a problem with React itself.
If you have a little time, let’s fix it according to the new version.
私のpackage.jsonの一部を紹介します。
// 2019.01 base dependencies [OK]
"material-ui": "^0.20.2",
"react": "^16.7.0",
"react-bootstrap": "^0.32.4",
"react-dom": "^16.7.0",
"react-particles-js": "^2.4.2",
"react-router": "^4.3.1",
"react-router-dom": "^4.3.1",
"react-scripts": "2.1.3",
"rebass": "^3.0.0"
// Error dependencies [NG]
"material-ui": "^0.20.2",
"react": "^16.13.1",
"react-bootstrap": "^1.0.1",
"react-dom": "^16.13.1",
"react-particles-js": "^2.7.1",
"react-router": "^4.3.1",
"react-router-dom": "^4.3.1",
"react-scripts": "2.1.3",
"rebass": "^3.0.0"
// OK dependencies [OK]
"material-ui": "^0.20.2",
"react": "^16.13.1",
"react-bootstrap": "^1.0.1",
"react-dom": "^16.13.1",
"react-particles-js": "^2.4.2",
"react-router": "^5.2.0",
"react-router-dom": "^4.3.1",
"react-scripts": "^2.1.3",
"rebass": "^3.2.2"
React Appは開発環境では全く問題が起きなく、中々アバウトでも動くので早めにbuildして動作検証はした方が良いなと思いました。
他のバッケージのバージョンアップでも中々手がかかる印象でした。