wysiwygエディタについての学習8
draft-jsを使ってみる続き
SelectionState
EditorState.getSelection()で取得できる選択範囲の状態
キーとオフセット
ネイティブDOMでは、選択範囲にはノードとオフセットのペアであり、
開始地点と終了地点を表し、それぞれアンカーとフォーカスとされる。
フォーカスって選択の終端だったのか。。知らなかった。
Draftでは、コンテンツブロックがあるので、そのキーとオフセットのペアで示すことができます
アンカーとフォーカス VS 開始点と終了点
アンカーとフォーカスだと便利で、前後の選択が柔軟にできる
ただ、選択の方向性を考慮する時には開始点と終了点の方を使うほうがいい
なるほど、編集時に引き続きの操作の際のフォーカス操作と一体に考えられるということかな。。
アンカー・フォーカスと開始点・終了点の両方をSelectionStateでは公開します。
編集操作では、アンカー・フォーカス、
コンテンツ管理では、開始点・終了点を使うべし。
SelectionStateが実際に持つのはアンカー・フォーカスであって、開始点と終了点は導出されるものです。
細かいプロパティの説明は省略。
Data Conversion
エディタは空き領域に存在するわけではない、保存や送信のためにnativeのjsに変換する場合があり、
汎用的なJSのデータに変換するユーティリティを提供する
FlowTypeのRawDraftContentState
には、エンティティオブジェクトのマップと同様に、
コンテンツブロックのリストが含まれる
細かいプロパティの説明は省略。
RichUtils
リッチテキスト編集のための静的ユーティリティーセットです。
細かいプロパティの説明は省略。
AtomicBlockUtils
アトミックブロック編集のためのユーティリティ関数の静的なセットです。
細かいプロパティの説明は省略。
KeyBindingUtil
キーバインディングを定義するためのユーティリティ関数の静的なセットです。
細かいプロパティの説明は省略。
Modifier
ContentStateオブジェクトに対する一般的な編集操作をカプセル化するユーティリティ関数の静的なセットです。これらのメソッドを編集操作に使用することを強くお勧めします。
細かいプロパティの説明は省略。
Author And Source
この問題について(wysiwygエディタについての学習8), 我々は、より多くの情報をここで見つけました https://qiita.com/bonk/items/eb57184fe0fac9bef318著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .