React でのリッチ テキスト エディターの実装
はじめ
に React でリッチ テキスト エディターを実装するには、 などの既存のサードパーティ ライブラリを使用できreact-quill
ますdraft-js
。ここにreact-quill
一例を示します。
まずreact-quill
ライブラリをインストールする必要があります。
npm install react-quill --save
次に、リッチ テキスト エディターを使用する必要があるコンポーネントにそれを導入して使用します。
import React, {
useState} from "react";
import ReactQuill from "react-quill";
import "react-quill/dist/quill.snow.css";
function RichTextEditor() {
const [editorContent, setEditorContent] = useState("");
const handleEditorChange = (content, delta, source, editor) => {
setEditorContent(content);
};
return (
<div className="rich-text-editor">
<ReactQuill
value={
editorContent}
onChange={
handleEditorChange}
modules={
{
toolbar: [
[{
header: [1, 2, false] }],
["bold", "italic", "underline", "strike", "blockquote"],
[
{
list: "ordered" },
{
list: "bullet" },
{
indent: "-1" },
{
indent: "+1" },
],
["link", "image"],
["clean"],
],
}}
placeholder="请输入内容"
/>
</div>
);
}
export default RichTextEditor;
上記のコードでは、 use はuseState
エディターのコンテンツを保存するために使用され、handleEditorChange
function はエディターのコンテンツが変更されたときにイベントを処理するために使用されます。
ReactQuill
コンポーネントはリッチ テキスト エディターの本体として、value
およびonChange
プロパティを使用してエディターのコンテンツを設定および取得します。
modules
プロパティは、組み込みツールバーが使用されるリッチ テキスト エディターを構成するために使用されます。
placeholder
エディターのコンテンツが空の場合にプレースホルダーを表示するために使用されるプロパティ。
コンポーネントはエディターのコンテンツをHTML
フォーマットに自動的に変換します。フォーマットのコンテンツはeditorContent
プロパティを通じて取得できますHTML
。
quill.snow.css
さらに、エディタが依存するスタイル ファイルであるファイルを コンポーネント にロードする必要があります。