Vueプロジェクトでリッチテキストエディタを使用する

Vueプロジェクトでリッチテキストエディタを使用する

最近项目中有一个需求,客户要求在上传图片的同时做文字描述,做到图文并茂的效果,考虑了一下,决定使用富文本编辑器来实现此功能。
説明: この記事では、Vue プロジェクトのリッチ テキスト エディターの使用シナリオと使用法について説明します。



序文

插件官网地址:https://www.wangeditor.com/v5/for-frame.html#%E8%B0%83%E7%94%A8-api

公式 Web サイトの説明: 公式 Web サイトの内容は、現在のリッチ テキスト エディターと他のエディターを比較し、他のリッチ テキスト エディターの欠点を説明し、vue2、vue3、react およびその他のテクノロジの使用サポートをサポートします。シンプルでわかりやすいので、興味のある方は
ぜひチェックしてみてください。


提示:以下是本篇文章正文内容,下面案例可供参考

1.wangエディター

説明: wangEditor はリッチ テキスト エディターの 1 つであり、最初の選択肢の 1 つであり、その利点は次のとおりです:
1. 使いやすい: WangEditor はシンプルなインターフェイスを備えており、使いやすく、プログラミング経験のないユーザーでも使用できます。素早く。
2. 包括的な機能: WangEditor は、フォント、色、サイズ、太字、斜体などの豊富な編集機能を提供し、画像、リンク、表、コード、その他の要素の挿入もサポートします。
3. 強力な互換性: WangEditor はさまざまなブラウザおよびオペレーティング システム上で安定して実行でき、互換性は非常に優れています。
4. 強力な拡張性: WangEditor は豊富な API とプラグイン メカニズムを提供し、ユーザーは自分のニーズに応じて拡張およびカスタマイズできます。
5. オープンソースで無料: WangEditor は、ユーザーが自由に使用および変更できるオープンソースの無料エディターです。

2. ステップを使用する

1. ライブラリをダウンロードしてインポートする

コードは次のとおりです(例)。

npm install wangeditor   

项目引入:
import wangEditor from 'wangeditor'

2. 具体的な用途

コードは次のとおりです(例)。

  <div ref="editorElem" style="height: 500px;"></div> 
//  特别说明 : 
  我这里是上传本地图片 所以需要用到input
  <input type="file" ref="fileInput" style="display: none;" @change="uploadImage">
  初始化代码如下:
  mounted() {
    
    
    // 初始化编辑器
    this.editor = new wangEditor(this.$refs.editorElem);

    // 配置编辑器
    this.editor.config.uploadImgShowBase64 = true; // 显示Base64编码的图片
    this.editor.config.uploadImgMaxLength = 5 * 1024 * 1024; // 限制上传图片的大小为5MB

    // 创建编辑器
    this.editor.create();
 },
 这里一定要销毁编辑器 防止内存泄漏
 destroyed() {
    
    
    // 销毁编辑器
    this.editor.destroy();
 },
 

  以下是一个图片上传的实现代码 :
  uploadImage() {
    
    
      const file = this.$refs.fileInput.files[0];
      if (!file) {
    
    
        return;
      }

      // 限制上传图片的类型为图片格式
      if (!/^image\/(png|jpg|jpeg|gif|bmp)$/i.test(file.type)) {
    
    
        alert('上传的文件不是图片');
        return;
      }

      // 限制上传图片的大小为5MB
      if (file.size > 5 * 1024 * 1024) {
    
    
        alert('上传的图片不能超过5MB');
        return;
      }

      // 读取图片文件,将其转换成Base64编码的格式
      const reader = new FileReader();
      reader.onload = (event) => {
    
    
        const base64 = event.target.result;
        this.editor.cmd.do('insertHtml', `<img src="${base64}" />`);
      };
      reader.readAsDataURL(file);

      // 清空文件选择框
      this.$refs.fileInput.value = '';
   }

要約する

WangEditor 是一款基于 JavaScript 和 jQuery 开发的富文本编辑器,它具有轻量、简洁、易于使用等特点,目前已经广泛应用于各类 Web 项目中 欢迎大家使用。

おすすめ

転載: blog.csdn.net/weixin_48211022/article/details/130400570