ノート共有型SNSの投稿フォーム実装【後編】Quillのテーマ設定とカスタマイズテクニック

ノート共有型SNS『eeNotes』の投稿フォームにQuillを導入!テーマの違いやカスタマイズの工夫、タグの変更方法などを詳しく解説。
前回の続きです📝
ノート共有型SNSの投稿フォーム実装【前編】react-quill選定の理由とカスタマイズポイント2024/6/5 23:272025/3/4 0:17

テーマについて

Quillには、BubbleSnowというテーマがあります。

Bubbleテーマ

 と指定すると以下のような表示になります。Bubbleテーマの特徴は、文字を選択した時にホップアップ表示で当てるスタイルを選ぶことが出来る点です。
Bubbleテーマの様子 | Bubbleテーマの様子
Bubbleテーマの様子 | Bubbleテーマの様子

Snowテーマ

 と指定すると以下のような表示になります。私たちは、文字選択時にはマーカー機能を実装したかったこともあり、こちらのテーマを選定しました。
Snowテーマの様子 | Snowテーマの様子
Snowテーマの様子 | Snowテーマの様子

デフォルトのタグを変更する方法

Quillのデフォルトのタグはで記述されています。
任意のタグに変更する場合は、以下の設定を追記すれば良いです。
  • Config/quill.js
私たちのプロジェクトでは、Quillの設定ファイルをに記述しています。
そして、divタグに変換したUI要素に対して以下のようなコードでCSSを当てています。デフォルトでは行間が狭く窮屈な感じだったためを指定したりしています。
 
  • スタイル定義
  • スタイルを適用

空段落が挿入される問題について

Quill Version: 1.3.7において、編集した文字列のDOMを更新した際などにといった空段落が挿入されてしまう問題がありました。
以下の設定を追記することで解決出来ます。
  • Config/quill.js

Quillに関するリポジトリ紹介

Quillに関するリポジトリが列挙されています。

Quillの形式変換module郡

さいごに

QuillはGitHubに公開されているmoduleも含めるとカスタマイズ性はかなり高く、良いライブラリだという所感です。最後まで読んでいただきありがとうございました😄

おまけ

eeNotesのチームメンバーがそれぞれ記事を書いてくれているので、ぜひ見てみてください!
インフラ基盤構成については @_tetsuya28 が
サーバーサイドについては @kozamurai
フロンドエンドについては @schktjm
チーム開発の流れについては @assassinEng

関連記事:
ノート共有型SNSの投稿フォーム実装【前編】react-quill選定の理由とカスタマイズポイント2024/6/5 23:272025/3/4 0:17ノート共有型SNSの投稿フォーム実装【後編】Quillのテーマ設定とカスタマイズテクニック2024/6/5 23:272025/3/4 0:18テキストエディタライブラリ比較【前編】react-quill & Editor.jsの特徴と選定ポイント2024/6/5 23:272025/3/4 0:15テキストエディタライブラリ比較【後編】PELL & trixの特徴と選定ポイント2024/6/5 23:272025/3/4 0:13
署名2025/3/3 16:552025/4/1 23:47