Nuxt3でcodemirrorに絵文字ピッカーを追加する

code on a screen NuxtJS
Photo by Markus Spiske on Pexels.com
この記事は約2分で読めます。

前回は以下の記事でNuxt3にマークダウンエディタのeasymdeを導入してみました。

Nuxt3でマークダウンエディタを使う
最近は個人的にnuxt3をよく触っています。練習としてちょっとしたアプリを作っているのですが、何らかの文書をマークダウンで扱えると文書構造を表現できて便利です。そこで、今回はnuxt3でマークダウンエディタを扱ってみます。nuxt3(vue...

マークダウンで文字入力できるようになったら絵文字も入力したくなります。今回はマークダウンエディタに絵文字ピッカーを組み込んでみます。

環境

  • Node.js v16.18.1
  • Nuxt 3.2.3
  • EasyMDE 2.18.0
  • vue3-emoji-picker 1.1.7

インストール

vue3-emoji-pickerをインストールします。

絵文字ピッカーを追加したイメージ

easymdeではツールバーに任意のボタンを追加することができます。ツールバーに顔文字のボタンがあるとわかりやすそうです。最終的な形は以下のようになります。顔文字アイコンを押すと絵文字ピッカーを表示するようにしてみます。

 

codemirrorの導入

前回の記事のとおりeasymdeを導入します。

これで以下のようなビューが表示されます。適当に文字を入力しています。スタイルも適用されてそうです。

絵文字ピッカーの追加

続いてツールバーの一番右に顔文字アイコンを追加し、アイコンをクリックしたら絵文字ピッカーが画面右下に表示されるようにしてみます。

コンポーネント内で絵文字ピッカーコンポーネントを使えるようにプラグインを追加します。

vue3-emoji-pickerの型宣言が見つからないエラーが出るため、以下のようにアンビエント宣言を追加します。

最終的なコードは以下のようになります。

以下のような動きになります。

参考リンク

コメント

タイトルとURLをコピーしました