【react-markdown】Markdown-HTML 変換コンポーネントを15分で作る

TypeScriptでフルスタックエンジニアになる
28 May 202414:59

Summary

TLDRこのビデオでは、マークダウン記法で書かれたテキストをHTMLに変換してウェブに表示する方法を紹介しています。Next.jsと呼ばれるフレームワークを使用し、MDXを使わずにデータベースに保存されたマークダウンをテキストとして読み込み、独自のコンポーネントを作成して再利用性を実現します。React MarkdownパッケージとTailwind CSSを使用して、スタイルとコードのハイライト表示を実現し、さらにrehype-remarkプラグインを導入してGFM(GitHub Flavored Markdown)に対応させます。最終的には、ウェブアプリ上でマークダウンを美しく表示することができるようになります。

Takeaways

  • 📝 今回はMarkdown記法のテキストをHTMLに変換して表示する方法を解説します。
  • 💡 MDXを使わずに、Markdownテキストを読み込んでHTMLに変換します。
  • 📁 Markdownテキストをファイルではなくデータベースに保存して管理します。
  • 🔄 コンポーネント化して再利用しやすくします。
  • 🖥 ターミナルでプロジェクトを作成し、Next.jsを選択して設定を進めます。
  • 🔧 不要なコードを削除し、必要なコンポーネントを追加します。
  • 📄 react-markdownパッケージを使用してMarkdownをHTMLに変換します。
  • 🌈 Tailwind CSSのプラグインを使って、Markdownから変換されたHTMLをスタイルします。
  • ✨ rehype-highlightを導入してコードブロックにシンタックスハイライトを適用します。
  • 🔗 リンクやテーブルの表示にはremark-gfmを使用します。

Q & A

  • マークダウン記法で書かれたテキストをHTMLに変換するにはどうすれば良いですか?

    -マークダウンテキストをHTMLに変換するには、リアクティブな環境で動作するReact Markdownというパッケージを使用することができます。このパッケージはGitHub Flavored Markdown (GFM)に対応しており、シンタックスハイライトなどの機能も備えています。

  • MDXとは何で、なぜこの動画では使わなかったのですか?

    -MDXはマークダウンとJavaScriptを組み合わせて使用できるライブラリで、Next.jsと組み合わせて記事などの管理に使われます。しかし、この動画ではMDXの代わりにマークダウンをデータベースに保存し、それをHTMLに変換して表示する方法を紹介しています。

  • Next.jsでプロジェクトを作成する際のフレームワークとして何を選択しましたか?

    -Next.jsでプロジェクトを作成する際には、フレームワークとしてNext.js自体を選択しました。また、TypeScript、ESLint、Tailwind CSSなどのツールも使用するかどうか尋ねられた際には全て「はい」を選択しました。

  • Tailwind CSSはプロジェクトにどのように追加しましたか?

    -Tailwind CSSをプロジェクトに追加するには、まずTailwind CSSとそれに必要なプラグインをインストールします。その後、`tailwind.config.ts`にプラグインの設定を追加します。

  • シンタックスハイライトを実現するためにはどのようなパッケージを使用しましたか?

    -シンタックスハイライトを実現するためには、highlight.jsというパッケージを使用しました。これにより、コードブロックを色分けして表示することができます。

  • Next.jsで作成したプロジェクトをデプロイする前に何を確認する必要がありますか?

    -デプロイする前に、プロジェクトの設定や必要なプラグインが正しくインストールされているか、また、スタイルやマークダウンの表示が正しく行われているかを確認する必要があります。

  • マークダウンをHTMLに変換する際に使用したReact Markdownパッケージの特徴は何ですか?

    -React Markdownは、Reactに対応したマークダウンをHTMLに変換するパッケージです。GFMに対応しており、プラグインを通じて様々な機能を拡張することができます。

  • GFMとは何で、React Markdownではどのように使用されていますか?

    -GFMとはGitHub Flavored Markdownの略で、GitHubで使用されている特別なマークダウン記法です。React Markdownでは、`react-markdown/plugins/gfm`プラグインを使用してGFMを有効にすることができます。

  • Tailwind CSSのタイポグラフィを使用するにはどうしたら良いですか?

    -Tailwind CSSのタイポグラフィを使用するには、まずTailwind CSSとタイポグラフィのプラグインをインストールする必要があります。その後、`tailwind.config.ts`にプラグインの設定を追加し、クラス名を追加して使用します。

  • この動画で紹介された方法で作成したブログはクラウドフレアにデプロイできますか?

    -はい、この動画で紹介された方法で作成したブログはクラウドフレアにデプロイ可能です。クラウドフレアは無料で多くの機能を使用でき、商用利用も可能であるため、多くの開発者によって使われています。

  • この動画ではどのようにしてコメント欄でのアウトプットを促しましたか?

    -この動画では、視聴者が学習し、思ったことや気づいたことをコメント欄にアウトプットするように促しました。これは理解を深める近道として位置づけられています。

Outlines

00:00

📝 Markdown to HTML Conversion with Next.js

この段落では、Next.jsを使用してマークダウン記法で書かれたテキストをHTMLに変換して表示する方法について説明しています。MDXは使用せず、代わりにデータベースに保存されたマークダウンテキストを読み込み、HTMLに変換するコンポーネントを作成し、再利用性を高める方法が紹介されています。プロジェクトの作成から、必要な設定やスタイルの変更まで、ステップバイステップのガイドが提供されています。

05:00

🎨 Tailwind CSSとreact-markdownの統合

第二段落では、Tailwind CSSを使用してreact-markdownで変換されたHTMLをスタイリングする方法が説明されています。Tailwind Typographyプラグインの導入と設定方法が紹介されており、これによりマークダウンから生成されたHTMLに適切なスタイルが適用されます。さらに、highlight.jsを使用してコードブロックのハイライト表示を実現する方法も解説されています。

10:01

🔗 GitHub Flavored Markdown (GFM) とスタイルの調整

第三段落では、GitHub Flavored Markdown (GFM)のサポートを追加し、さらにスタイルを調整する方法が説明されています。react-markdownにGFMプラグインを追加し、URLのリンクを反映させる方法が紹介されています。また、背景色を調整するため、特定の要素にTailwind CSSのクラスを追加する方法も説明されています。最後に、デプロイに向けてCloudflare Pagesを使用する意図と、これまでの経験を共有する意図が語られています。

Mindmap

Keywords

💡マークダウン記法

マークダウン記法は、テキストデータを簡単に書式設定するための軽量マークアップ言語です。このビデオでは、マークダウン記法で書かれたテキストをHTMLに変換し、ウェブ上で美しく表示する方法を学びます。例えば、スクリプトではマークダウンテキストをデータベースに保存し、それをHTMLに変換してウェブページに表示するプロセスが説明されています。

💡HTML変換

HTML変換とは、マークダウンのようなプレーンテキスト形式をウェブブラウザで表示できるHTMLコードに変換するプロセスです。ビデオでは、マークダウンテキストをHTMLに変換してウェブページに表示する方法を紹介しており、これはウェブサイトのコンテンツ管理において非常に重要な技術です。

💡NEXT.JS

NEXT.JSは、Reactフレームワークに基づいたサーバーサイドレンダリングを提供するウェブアプリケーションフレームワークです。ビデオではNEXT.JSを使用してウェブサイトを作成し、マークダウンテキストをHTMLに変換して表示するプロセスを説明しています。

💡MDX

MDXは、マークダウン記法を拡張してReactコンポーネントを直接使用できるようにした言語です。ビデオではMDXを使用する代わりに、マークダウンテキストをHTMLに変換する方法を探求しています。これはマークダウンをウェブ開発で活用する別のアプローチを示す例です。

💡データベース

データベースは、構造化されたデータを保存するためのシステムです。ビデオではマークダウンテキストをデータベースに保存し、必要に応じて取得してウェブページに表示するというアプローチを取っています。これはウェブアプリケーションのコンテンツ管理に一般的です。

💡コンポーネント化

コンポーネント化は、ソフトウェア開発で使用される手法で、大きなアプリケーションを再利用可能な小さな部品に分割します。ビデオではマークダウンテキストをHTMLに変換する機能をコンポーネント化し、異なるアプリケーションで再利用できるようにしています。

💡リアクティブ

リアクティブとは、ユーザーの操作に応じて動的に変化するウェブアプリケーションを作成するためのパラダイムです。ビデオではリアクティブなプログラミングを使用して、マークダウンテキストを動的にHTMLに変換し、ウェブページに表示するプロセスを構築しています。

💡Tailwind CSS

Tailwind CSSは、効率的にウェブデザインを作成するための高度にカスタマイズ可能なCSSフレームワークです。ビデオではTailwind CSSを使用して、マークダウンから変換されたHTMLのスタイルを調整し、美しく表示する方法を紹介しています。

💡ハイライト

ハイライトとは、コードブロック内のシンタックスを色分けして表示することで、コードの可読性を高める技術です。ビデオではhighlight.jsを使用して、マークダウン内のコードブロックをハイライト表示する方法を説明しています。

💡GitHub Flavored Markdown (GFM)

GitHub Flavored Markdownは、GitHubで使用される拡張されたマークダウン記法です。ビデオではGFMをサポートするようにマークダウンをHTMLに変換するプロセスをカスタマイズし、テーブルやリンクなどのGFM特有の機能をウェブページで正確に表示する方法を学びます。

Highlights

マークダウン記法で書かれたテキストをHTMLに変換して表示する方法を学ぶ

MDXを使用せずにマークダウンをテキストとして読み込み、HTMLに変換

データベースにマークダウンテキストを保存する機能を実装

再利用可能なマークダウンプレビューコンポーネントを作成

Next.jsを使用してプロジェクトを作成し、設定を行う

ページのメインタグとクラス名を削除してホームページを作成

Googleフォントのnoto Sans JPを使用し、フォントを変更

言語設定とメタデータを変更し、マークダウンブログアプリにタイトルを設定

react-markdownパッケージを使用してマークダウンをHTMLに変換

デモページでreact-markdownの機能を確認

Tailwind CSSのTYPOグラフィを使用してスタイルを適用

highlight.jsを使用してコードブロックに配色を適用

react-markdownのpropsを使用してスタイルをカスタマイズ

remark-gfmを使用してGitHub Flavored Markdownをサポート

URLを修正し、リンクが正しく反映されるようにする

スタイルを調整し、リンクに色をつける

コンテンツプロパティを追加して、マークダウンプレビューコンポーネントに引数を渡す

マークダウンをHTMLに変換するプロセスを共有し、クラウドフレアへのデプロイに焦点を当てる

クラウドフレアで使える技術と使えない技術を理解し、無料で試すことができる

チャンネル登録を呼びかけ、今後の動画で一緒に学び続けることを促す

Transcripts

play00:00

今回はマークダウン記法で書かれた

play00:02

テキストをHTMLに変換して表示する

play00:05

方法を見ていきますNEXT.JSの

play00:08

ドキュメントを見るとMDXが紹介されて

play00:12

いますしかしMDXは使いません代わりに

play00:15

マークダウンで書いた内容をテキストとし

play00:18

て読み込みHTMLに変換して表示します

play00:21

これはファイルで管理せずにデータベース

play00:23

にマークダウンテキストを保存することを

play00:26

想定していますそしてその機能を実装した

play00:30

コンポーネントを作成します

play00:31

コンポーネントにしておくことで再利用し

play00:34

やすくなりますこの動画を見ていただけれ

play00:36

ばマークダウン記法で書かれたテキストを

play00:39

HTMLに変換して表示できますまた

play00:43

コンポーネント化することでいろんな

play00:44

アプリに再利用できますこの動画で学習し

play00:48

て思ったことや気づいたことはコメント欄

play00:50

にアウトプットしてくださいアウトプット

play00:53

こそがあなたにとって理解する近道です

play00:56

それでは早速始めましょうカーソルを起動

play00:59

したらターミナルを開きますCD

play01:01

Desktop/m/mprojを実行し

play01:05

て移動しますmkdMARダウンブログを

play01:09

実行してプロジェクトを作成する

play01:11

ディレクトリを作成しますCDMAR

play01:14

ダウンブログを実行して移動しますNPM

play01:17

createCloudfare@

play01:19

latest.を実行してプロジェクトを

play01:22

作成しますまずはどのようなアプリを作る

play01:24

のか選択します4番目のWEBサイトor

play01:27

WebAppを選択します次にどのような

play01:30

フレームワークを使うのか聞かれます7番

play01:33

目のNEXTを選択します質問されますが

play01:36

全てそのまま答えてくださいタイプ

play01:38

スクリプトは使うのでyesESlint

play01:41

は使うのでyesテウンCSSは使うので

play01:45

yesソースディレクトリは使わないので

play01:48

Noアルタは使うのでyesインポート

play01:51

エリアスは使わないのでNoプロジェクト

play01:53

が作成されるまで時間がかかるので早送り

play01:56

します次にESlintのプラグインを

play01:59

使うかどう聞かれますYESを選択します

play02:02

また早送りして最後にデプロイするかどう

play02:05

か聞かれますデプロイは後でするのでノー

play02:07

を選択しますからだったマークダウン

play02:10

ブログディレクトリにプロジェクトが作成

play02:12

されましたコードドを実行して新たに

play02:15

カーソルを立ち上げます不要なコードを

play02:17

削除しますアディレクトリを開きます

play02:20

Page.TSXを開きますメインタグの

play02:24

中のdivタグを閉じて全て削除します

play02:27

メインタグの間にホームと入力してきます

play02:30

メインタグのクラスネームも削除しておき

play02:32

ますglobals.CSSを開きます

play02:36

コロンルート以降を閉じて全て削除します

play02:39

layout.TSXを開いています

play02:42

フォントを変更しますまずはいつものよう

play02:44

にintをGoogleフントのnot

play02:47

SanJAPANに変更しますまずは

play02:49

インポートされているinをnotSan

play02:52

JPに変更してコピーしますinを選択し

play02:55

てコピーしたnotSSjpを貼り付け

play02:58

ますオブジェクトを確納している変数

play03:00

インターとボディタグのクラスネームの

play03:03

インタを選択しますそしてnotアバS

play03:06

アバJPに変更します言語設定を変更し

play03:10

ますHTMLタグのラングプロパティを

play03:13

enからJAに変更しますメタデータを

play03:16

変更しますタイトルをマークダウンブログ

play03:19

アプに変更しますマークダウンをHTML

play03:23

に変更して表示するためのコンポーネント

play03:25

を作成しますPage.TSXを開きます

play03:29

ホームを削除してマークダウンプレビュー

play03:31

コンポーネントを追加します

play03:33

コンポーネントのファイルを作成します

play03:35

アップディレクトリの中にアバ

play03:38

component/mDown

play03:40

preview.TSXを作成します

play03:43

RFCを入力してsnipedを呼び出し

play03:46

ますスネイクケースのマークダウン

play03:48

プレビューをパスカルケースに変更します

play03:50

Page.TSXに戻りますマークダウン

play03:54

プレビューの1文字を入力し直して

play03:56

インポートしますターミナルを開いて簡易

play03:59

サーブを立ち上げますターミナルは閉じて

play04:02

おきますブラウザで確認します小さいので

play04:05

大きくしますマークダウンプレビューが

play04:07

表示されていますマークダウンプレビュー

play04:09

コンポーネントがちゃんと呼び出されてい

play04:11

ますカーソルに戻りますマークダウンを

play04:14

HTMLに変更するために今回はリアクト

play04:18

マークダウンというパッケージを使います

play04:20

名前で分かる通りリアクトに対応した

play04:23

パッケージですデモが用意されているので

play04:25

見てみましょうデモページを開きます

play04:28

スクロールしてみますシンタックス

play04:30

ハイライトに対応していますこれはコード

play04:33

を色分けして表示することで分かりやすく

play04:35

するためですカーソルでコードを編集する

play04:38

時にカラフルに表示されているのも同じ

play04:41

機能ですデモではリハイプハイライトと

play04:43

いうプラグインを使っていますコードを

play04:46

見るとリハハイライトがインポートされて

play04:48

リハプラグインズにリハハイライトが指定

play04:51

されていますこれで適用できるようです

play04:54

再びスクロールするとgitHUB

play04:56

フレイバーマークダウンgfmに対応して

play05:00

いますデモではリマーgfmというプラグ

play05:03

インを使っています右上にあるユリマー

play05:06

gfmをチェックしてみますgfmが反映

play05:10

されてテーブルに変換されたりURLの

play05:12

リンクが反映されますURLを別

play05:15

Windowで開いてみます開くことが

play05:18

できましたスクロールすると他にも載って

play05:20

いますが各自で見てくださいgitHUB

play05:23

のページを開きますページを参考に

play05:26

リアクトマークダウンパッケージを

play05:28

インストールします下にスクロールして

play05:30

インストールの項目に移動しますコマンド

play05:33

をコピーしますカーソルに戻って

play05:35

ターミナルを開きますコマンドを貼り付け

play05:38

て実行しますインストールが終わったら

play05:40

ターミナルは閉じますマークダウンの

play05:43

ダミーデータを作成しておきますルート

play05:45

ディレクトリにコンスタンツ/mDESを

play05:48

作成しますエポーコンストMD=バッコ

play05:53

バックコートの中にダミーのマークダウン

play05:56

を入力します事前に用意していたものを

play05:59

コピペします変数MDにマークダウンを

play06:02

格納しますバックコートで囲うことで複数

play06:05

業の文字列を格納できますまたマーク

play06:08

ダウンの中に波線を3つ並べていますが

play06:10

バックコートで囲っているのでバック

play06:13

コートの代わりに波線を3つ並べています

play06:16

ダミーのマークダウンをマークダウン

play06:18

プレビューコンポーネントに表示させます

play06:21

MARDownpreview.TSXを

play06:23

開きますデブタグの中のマークダウン

play06:26

プレビューを削除して変数MDを呼び出し

play06:28

ますが表示されるので1番上を選択して

play06:32

インポートしますブラウザで確認します

play06:35

まだDIVタグで囲っているだけなので

play06:37

文字列として表示されていますこれを

play06:39

リアクトマークダウンを使ってHTMLに

play06:43

変更しますカーソルに戻りますリアクト

play06:45

マークダウンにはマークダウンという

play06:47

コンポーネントが用意されていますこれを

play06:50

使うことでマークダウンをHTMLに変更

play06:53

できます違いが分かるように何もしない

play06:56

場合とマークダウンコンポーネントを使う

play06:58

場合を一緒に表示しますDIVタグを追加

play07:01

してその中に元々あったDIVタグを移動

play07:04

しますその下にマークダウンタグを追加し

play07:07

て1文字入力し直して1番上のリアクト

play07:10

マークダウンを選択してインポートします

play07:13

そしてマークダウンタグの間に変数MDを

play07:16

呼び出しますブラウザで確認します

play07:18

ちょっと分かりにくいですがこの部分が

play07:21

DIVタグのマークダウンですそしてこの

play07:23

部分がマークダウンタグのマークダウン

play07:26

ですマークダウンがHTMLに変換されて

play07:29

表示されています今の状態ではマーク

play07:32

ダウンをHTMLに変換されただけで

play07:35

CSSは当たっていませんそこでTAIL

play07:38

wndCSS公式のプラグインテルウン

play07:41

タイポグラフィを使いますマークダウン

play07:43

から変換されたhtmlをいい感じに表示

play07:46

するCSSを提供していますまずはテウン

play07:50

タイポグラフィーをインストールします

play07:52

gitHUBのページを見ます下に

play07:54

スクロールして導入方法を見ます

play07:57

ライブラリーをインストールして

play07:59

Window.config.TSに設定

play08:02

を追加する必要があるようですまずは

play08:04

インストールのコマンドをコピーします

play08:07

カーソルに戻りますターミナルを開いて

play08:10

貼り付けて実行しますターミナルを閉じ

play08:12

ますgitHUBのページに戻ってT

play08:15

Window.config.TSに追加

play08:17

するコードをコピーしますカーソルに戻っ

play08:20

てtailwind.config.TS

play08:23

を開きますプラグインズの角括弧の中に

play08:26

コピーしたコードを貼り付けますgit

play08:28

HUBのページに戻りますスクロールして

play08:31

使い方を見ますクラスネームを追加して

play08:34

プローズを指定するといいようですね

play08:36

カーソルに戻ってMarkdown

play08:38

preview.TSXを開きますマーク

play08:41

ダウンタグにクラスネームを追加して

play08:43

プロズを指定しますブラウザで確認します

play08:46

CSSが反映されて表示されました

play08:49

リアクトMARダウンのデモで使われてい

play08:51

たリハイプハイライトを導入しますgit

play08:54

HUBのリhipeハイライトのページを

play08:56

見ますスクロールしてインストールの項目

play08:59

に移動しますインストールのコマンドを

play09:02

コピーしますカーソルに戻ってターミナル

play09:04

を開きますコマンドを貼り付けて実行し

play09:07

ますターミナルは閉じておきますGHUB

play09:10

のページに戻りますスクロールして

play09:12

インポート文をコピーしますカーソルに

play09:15

戻ってコピーしたインポート文を貼り付け

play09:18

ますマークダウンタグにリププラグインズ

play09:21

かかこリハイプハイライトマークダウン

play09:23

タグにリププラグインズプロパティを追加

play09:26

してリプハイライトを渡しますブラウザで

play09:29

確認しますまだ色が反映されていません

play09:32

これはhighlight.JSから

play09:35

CSSファイルをインポートする必要が

play09:37

あるからですhighlight.JSの

play09:40

ドキュメントを見ます配色のCSSを直接

play09:43

インポートできるのでインポート文を

play09:46

コピーしますカーソルに戻りますコピーし

play09:48

たインポート文を貼り付けますブラウザで

play09:51

確認します反映されてコードに配色されて

play09:54

いますしかし背景が白と黒でチグハグに

play09:58

なってしまっています気持ち悪いので白1

play10:01

色に変更しますデベロッパーツールを開い

play10:04

て要素を見ます要素を開いていくとコード

play10:07

の部分はプレタグの中にコードタグがあっ

play10:09

てその中にコードの内容がありますという

play10:12

ことはプレタグにクラスネームを追加して

play10:15

BGホワイトを指定することで背景色を

play10:18

白色にできますではどのようにプレタグに

play10:21

クラスネームを追加することができるかと

play10:23

言うとマークダウンにコンポーネント

play10:25

プロパティを追加してその中に設定を追加

play10:28

します少し特殊な書き方ですが追加してみ

play10:31

ましょうリアクトマークダウンのgit

play10:34

HUBのページを開きますアンッB

play10:36

コンポーネントを見るとコンポーネント

play10:38

プロパティの使い方が載っています使い方

play10:41

に載っているコードを利用しましょう

play10:44

コードをコピーしますカーソルを開きます

play10:47

コンポーネントプロパティを追加して波

play10:49

括弧の中に波括弧を追加しますその中に

play10:52

コピーしたコードを貼り付けますMをプレ

play10:55

に変更しますリターンの後のiをプレに

play10:58

変更してスタイルを削除します代わりに

play11:01

クラスネームプロパティを追加してBG

play11:03

ホワイトを指定しますブラウザで確認し

play11:06

ますブラウザを更新すると背景色が白色に

play11:10

変更されましたまたデベロッパーツールを

play11:12

見るとプレタグにクラスが追加されてBG

play11:15

ホワイトが指定されていますもし分から

play11:18

なかった方は動画を戻してみて見比べてみ

play11:21

てください最後にリマークgfmを導入し

play11:24

ますリマーgfmのgitHUBのページ

play11:27

を開きますスクロールしてインストールの

play11:29

項目に移動しますインストールする

play11:32

コマンドをコピーしますカーソルに戻って

play11:35

ターミナルを開きますコピーしたコマンド

play11:37

を貼り付けて実行します終わったら

play11:40

ターミナルは閉じておきますマークダウン

play11:42

タグにリマークプラグインズかかこリマー

play11:45

gfm候補が表示されるので1番上を選択

play11:49

してインポートしますブラウザで確認し

play11:52

ますブラウザを更新してみますリンクが

play11:54

反映されませんすいませんURLを間違え

play11:58

ていましたカーソルに戻ってMD.TSを

play12:01

開きますURLを修正しますブラウザで

play12:04

確認しますリンクが反映されていますね

play12:07

またデベロッパーツールを見るとPタグの

play12:10

URLにAタグが追加されていますもし

play12:13

分からなかった方は動画を戻してみて

play12:16

見比べてみてくださいリンクに色をつけて

play12:18

みますカーソルに戻ってMarkdown

play12:21

preview.TSXを開きますプレ

play12:24

タブの設定をコピペします2つのプレオA

play12:27

に変更してBGホワイトをテキストブルー

play12:30

500に変更しますブラウザで確認します

play12:33

リンクに色がついていますねまた

play12:35

デベロッパーツールを見るとAタグに

play12:37

クラスが追加されてテキストブルー500

play12:40

が指定されていますもし分からなかった方

play12:42

は動画を戻してみて見比べてみてください

play12:45

マークダウンプレビューコンポーネントに

play12:48

引数を追加します変更前のデモを表示する

play12:51

デブタグは削除しますマークダウンタグの

play12:54

丸かこの中に波かこコンテンツコロン波

play12:58

かこコンテンツコロンスリングマーク

play13:00

ダウンタグの間の引数MDを削除して

play13:03

コンテンツに変更しますPage.TSX

play13:07

を開きますマークダウンプレビュータグに

play13:09

コンテンツプロパティを追加して引数MD

play13:12

を指定しますついでに見やすくします

play13:15

メインタグのクラスネームにMAXwxl

play13:18

mxoを指定しますブラウザで確認します

play13:22

問題なく表示されていますねまた最大幅を

play13:25

576Pixelに制限して中央に配置し

play13:29

しました左端にも余白ができて見やすく

play13:31

なったと思います今回はマークダウンを

play13:34

HTMLに変換するコンポーネントを作成

play13:38

しましたがいかがだったでしょうか実は

play13:40

最初MDXを使って記事を管理するブログ

play13:43

を作成していましたしかしエランタイムが

play13:46

原因でクラウドフレアページズにデプロイ

play13:49

できませんでしたそこで今回のやり方を

play13:52

使ってデータベースで記事を管理する

play13:54

ブログを作成することにしましたその中で

play13:57

今回使ったことを皆さんと共有できればと

play14:00

思い動画にしましたマイナーな話題なので

play14:03

皆さんの多くに役立つかどうか分かりませ

play14:05

んが私の裏の目的はクラウドフレアに

play14:08

デプロイできるアプリやAPIを作成する

play14:11

ことですクラウドフレアは無料で使える

play14:14

機能が多く商用利用もできますクラウド

play14:17

フレアで使える技術と使えない技術が

play14:19

分かれば迷うことなく試すことができます

play14:22

また無料で試すことができれば皆さんが

play14:24

運用するハードルがぐと下がります私は皆

play14:27

さんと一緒にいろんなアプリを作成して

play14:30

サービスを公開したいと思っています私も

play14:33

道半ばですが皆さんもお付き合い

play14:36

いただければ幸いですいかがだった

play14:38

でしょうかもし分かりやすかったよって方

play14:41

は高評価をお願いしますまた分からなかっ

play14:44

たよって方はコメントからご意見をお願い

play14:47

します頂いたご意見は今後の動画の改善の

play14:50

ために参考にいたします是非チャンネル

play14:53

登録していただいて私と一緒に学んでいき

play14:56

ましょうそれでは次の動画でお会いし

play14:58

ましょう

Rate This

5.0 / 5 (0 votes)

Related Tags
マークダウンHTML変換ウェブアプリNext.jsMDXデータベースコンポーネント再利用Cloudflareデプロイ
Do you need a summary in English?