
Edge i18n を使ったインタラクティブ MDX
#demo
#mdx
#react
2025年12月5日
これは通常の Markdown 段落です。あなたが今読んでいるテキストはファイルシステム上にあります。
しかし、ニュースレター登録フォームのような動的コンポーネントを追加したい場合はどうでしょう?通常、ボタンラベルなどは React コンポーネントの中にハードコーディングする必要があります。
「ハイブリッド」コンポーネント
以下は React Island です。構造はコードで定義されていますが、テキストラベルは Cloudflare KV から取得されています。 言語を日本語に切り替えてみてください。コードを変更することなく、コンポーネントが自動的に更新されるのがわかります。
Stay Updated
Get the latest EdgeKits news directly to your inbox.
仕組み
- ページが読み込まれると、KV から
blog名前空間の翻訳が取得されます。 - Astro はこれらの翻訳を props として
<Newsletter />コンポーネントに渡します。 - コンポーネントは
client:visibleを使って正しい言語でクライアント側でハイドレーションされます。
これにより、コンテンツ制作者はローカライズファイルを意識することなく、複雑な UI ウィジェットを利用できます。