Create React App が server rendering に(一部)対応している件について

2020-08-02

あくまで一部ですが、いつの間にか対応されていました。

server side rendering (以下 ssr)が必要なケースについては、このブログでも何度か書いてきましたが、改めて書き出すと以下の 2 つに絞られると思っています。

  1. ファーストビューを素早く表示したい
  2. 動的に生成されるページにおける、JS に対応していないクローラ(Twitter や Facebook など)に対する SEO 対応

で、1 はともかく、2 は Create React App(以下 cra)ではどうしても対応できず、Next.js しか選択肢が存在しない状態でした。

ところが、最近 cra の公式サイトを覗いていると、気になる項目が出来ているではありませんか。

特に上のやつがそうなんですが、これって要するにサーバ側で meta タグを埋めるよって手法ですよね。

ちょっと調べてみたところ、YouTube にめっちゃわかりやすい解説動画が上がっていました。

要するに ssr はしないけど、動的なページに対する seo が対応できるようになったぜ!ってことですね。

つまり、さらに Next.js を選ぶ理由が弱まったということですね、cra ってほんとすげー。

あれだけサーバ側に対する腰が重かった Facebook がついに対応したというのは、なかなか衝撃的です。

加えて、Firebase で動的にページのホスティングってどうやるのかなーと思ったのですが。

調べてみると、これも公式サイトに書かれていました、しかも簡単に実装できそうです。

今度暇なときに実装してみようと思います。