私はリアクションでテキストエディタを作ろうとしています。誰も選択したテキストをテキストエリアから取得してスタイルを選択したテキストに適用する方法を知っています。私はjavascriptでwindow.getSelectionを使用できますが、他の方法がこの機能に利用できるかどうか反応のテキスト領域から選択したテキストを取得する方法は?
1
A
答えて
4
はいこれを行う方法は、特にReactにあります。あなたがこれを達成するために行くべき方法は以下の通りです。
ステップ1:textarea UIエレメントでrefを使用します。 like
`<textarea
className='html-editor'
ref='myTextarea'
value = {this.state.textareaVal}
onChange={(event)=>{
this.setState({
textareaVal:event.target.value;
});
}}
>
</textarea>`
手順2:ここでは、反応参照を使用してDOM要素にアクセスできます。
let textVal = this.refs.myTextarea;
ステップ3: - したselectionStartとselectionEndにを使用します - したselectionStartを使用して、あなたの開始と終了ポインタ選択text.whichの
を知ってもらうことができます
selectionEndには、以下のように行うことができます。
let cursorStart = textVal.selectionStart;
let cursorEnd = textVal.selectionEnd;
あなたの選択したテキストの開始と終了のインデックスがあります。
手順4: - 選択したテキストを取得するには、javascript substring関数を使用します。
this.state.textareaVal.substring(cursorStart,cursorEnd)
1
Reactでテキストエディタを作成する最も良い方法は、DraftJSを使用することです。
Reactを使用している場合は、DraftJSがこれを実行する方法です。独自のテキストエディタを作成する際に直面する多くの課題を抽象化します。これには、エディタの状態の管理(コンポーネントの状態の管理方法と同様)、テキスト選択の管理、異なる属性の適用などが含まれます。
あなたはget started by checking out the docsとすることができます.DraftJSが解決しようとする難しさを通っているそのページの紹介ビデオを見てみることをお勧めします。
私は役立つことを願っています。
関連する問題
- 1. system.web.mvc.selectlistから選択したテキストを取得する方法
- 2. JavaScriptのテキスト領域の値を取得する方法
- 3. Asp.net MVCのテキスト領域の内容を取得する方法
- 4. 複数のテキスト領域からtinyMCEコンテンツを取得する方法
- 5. 反応ネイティブWebviewから選択オブジェクトを取得する方法
- 6. 選択したテキストでdivを取得する方法は?
- 7. 画面上の選択領域にテキストを入力する方法は?
- 8. テキスト領域から以前のすべてのテキストをクリアする方法は?
- 9. 反応+酵素で要素テキストを選択する方法
- 10. テキスト領域をオートフォーマットテキストにする方法
- 11. メモ帳++テキスト内の特定の領域を選択する
- 12. クリックした領域の代わりに領域を選択する方法
- 13. テキスト領域からのテキストの取得とラベル上の太さの設定
- 14. テキスト領域に右クリックポップアップメニューを作成します。空でなく、選択したインデックスを取得する場合
- 15. ブラウザから選択したテキストを取得する
- 16. uiwebviewから選択したテキストを取得するXcode
- 17. テキスト領域の角領域の空白を取り除く方法
- 18. タポールイベントで選択したテキストを取得
- 19. getBBox()を使用してテキスト領域を取得する
- 20. 他のフレームから選択されたテキストを取得する
- 21. HTMLから選択した値/テキストを取得する方法コードビハインドで選択する
- 22. リストの選択項目からテキストを取得し、そのテキストをTextViewに設定する方法は?
- 23. ドロップダウンの選択時にデータベースからテキスト領域にデータを入力
- 24. テキスト領域のキャリッジリターン
- 25. javafxで選択した画面領域のスナップショットを取る方法は?
- 26. tinyMCE選択した領域の選択を解除する方法
- 27. 他のウィンドウでinternet explorer_serverで選択したテキストを取得する方法は?
- 28. UIWebViewで選択したテキストの座標(CGRect)を取得する方法は?
- 29. チェックボックスの値選択時のテキスト領域ベースの追加または削除
- 30. テキスト領域とハイパーリンク?