Open5
lexicalを使いたい
何やらmetaからすごいwysiwygエディタが出たと聞いたので触ってみたい
普段の業務に取り入れることを想定し、angularで触る
所感
- 公式ページをみてチュートリアルを終えるも何も出てこず、何も入力できなくて驚いた
- なんかおかしいと思い、色々調べるとなるほど最初は何もなく自分で組み立てていく方式とのこと(これは前身的ライブラリDraft.js由来らしい)
- あとeditorを付与するdiv要素にはcontentible="true"をつけないといけないらしい(それはREADMEに書いてよぉ…)
<div #plainTextEditor contenteditable="true"></div>
初期状態だと何もないから、キャレットすら表示されないけど、あらかじめ用意されているプリセットを使えばそれなりのテキストエリアになる(ex. command+bで太字になる的な)
// シンプル
npm install @lexical/plain-text @lexical/utils @lexical/selection @lexical/clipboard
// リッチ
npm install @lexical/rich-text @lexical/utils @lexical/selection @lexical/clipboard
データの流れとかcommandの作成方法とかを勉強すれば、色々とカスタマイズできそう?
ex. :+1:って入力したら絵文字に変換するとか
react有するmetaだけあってreactには既に完成されたコンポーネントが多く供給されているが、それ以外のフレームワークだと既製品のコンポーネントはあまり期待できなさそう?
結構コストは高そう