リッチテキストエディター:Tiptap
Svelteラッパーを使い、Tiptap ProseMirrorエディターをSvelteKitのフォームに組み込みます。
「リッチテキストエディター:Tiptap」はCoddyKit上の無料Sveltejs Academyレッスンです。 これはレッスン4/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはSveltejs Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Sveltejs Academyコースには全4レッスンが含まれています。
Tiptap
Tiptapは、使いやすい拡張システムを備えた、ProseMirrorベースの人気のエディターです。
インストール
コアとスターターキットを追加します。
npm install @tiptap/core @tiptap/starter-kit初期化
onMountでdivを対象とするEditorを作成します。
const editor = new Editor({ element: el, extensions: [StarterKit] });DOMにバインドする
bind:thisを使って要素の参照を取得します。
<div bind:this={el} class="editor" />クリーンアップ
リソースを解放するため、onDestroyでeditor.destroy()を呼び出します。
双方向バインディング
エディターのupdateイベントを購読し、コンテンツをSvelteストアに同期します。
editor.on("update", ({ editor }) => content = editor.getHTML());ツールバー
editor.chain().focus().toggleBold().run()などを呼び出すボタンでツールバーを構築します。
リアクティブなアクティブ状態
エディターの更新を購読し、アクティブなボタンを強調表示します。
拡張機能
Tiptapの拡張機能で、画像、メンション、テーブル、コードブロックを追加します。
スキーマのカスタマイズ
ドメイン固有の編集体験に合わせて、独自のスキーマを定義します。
SvelteKitラッパー
contentプロパティとディスパッチされた更新を扱うコンポーネントで、エディターをラップします。
モバイル
タッチデバイスでテストします。ProseMirrorはプラットフォーム間での選択を適切に処理します。
クイックチェック
editor.destroy()は何をしますか。
まとめ
bind:thisとライフサイクルフックを使って、Tiptapをコンポーネントでラップします。エディターのコマンドでツールバーを構築します。
よくある質問
「リッチテキストエディター:Tiptap」レッスンは無料ですか?
はい。「リッチテキストエディター:Tiptap」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Sveltejs Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Sveltejs Academyコースには全4レッスンが含まれています。
「リッチテキストエディター:Tiptap」で何を学びますか?
Svelteラッパーを使い、Tiptap ProseMirrorエディターをSvelteKitのフォームに組み込みます。 ブラウザで直接実行するハンズオンコードでSveltejs Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
Sveltejs Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのSveltejs Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン4/4です。
「リッチテキストエディター:Tiptap」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このSveltejs Academyレッスンでコードを書いて実行できますか?
はい。すべてのSveltejs Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- SvelteKitでTailwind CSSを使う
- SvelteでのD3.jsチャート
- Svelte ActionsによるLeafletマップ
- リッチテキストエディター:Tiptap