Reactで書かれたコードをグーグルクローラに読み込ませる[その2]
これの続き
saegusa41010.hatenablog.jp
謎のエラー
webアプリを公開、サーチコンソールに登録後、url検査にて作成したページをライブテスト。そうしたらエラーが発生。
エラー内容を探してみると
Uncaught SyntaxError: Unexpected token => https://www.twi-reviews.jp/packs/hello_react-bc8882257be880b4f845.js:1
クローラのjsが古い?
エラー内容は=>が間違っているよというもの。ここで予想としては、ES6で書かれたjsでのアロー関数をクローラが読み込んでくれてないんじゃないかと考えた。 ならばなんとかしてjsのヴァージョンを下げたい。そこで、babelを利用することにした。
babelを導入。
まずはconfig/environment.jsにいかを記述
import "babel-polyfill" const babel = environment.loaders.get('babel') const babelLoader = babel.use.find(loader => loader.loader === 'babel-loader') babelLoader.options.presets = [ [ "env", { "modules": false, "useBuiltIns": true } ], "react" ]
このように記述すればwebpackでjsをまとめ上げる際に、ES5(古いバージョンのjs)に変換できる。
しかしエラー内容は変わらず。
次に、application.js(エントリーポイント)に以下を記述
import "babel-polyfill"
しかし変わらず。咽び泣きたい。
続きはまた別記事で