GoogleBOTでJavascriptエラー

#起きたこと

このブログがGoogleBOTで正しくレンダリングされない

記事一覧や記事ページで外部リソースが読み込めていなかったのでfetchPromiseがないものと思い込みpolyfillを追加するも変化なし

NetlifyでSPA用のPrerenderingをやってみるも効果なし(そもそも動いてるのかすら怪しい...)

polyfill.ioのCDNを入れるもGoogleBOTに読み込ませるとpolyfillスクリプトがエラーになり<body>のレンダリングすらされない...

<body>へのエラー出力を追加して調べてみたところfetchしたレスポンスをいじってる箇所でObject.assign is undefined...

#対応したこと

面倒だったのでbabel-polyfillで対応した

npm install --save babel-polyfill

今までは手動でインポートしていたが、Webpackだとentryにモジュール名を渡すとバンドルしてくれるらしい(このとき初めて知った)

module.exports = {
  entry: ['babel-polyfill', './src/index.js'],
  // ...
}

#ちなみに...

GoogleBOTに正しくレンダリングされているかどうか確認したい場合は、Google Search ConsoleのFetch as Googleを使うと確認できる