当前位置: 首页 > article >正文

基于quill2.0的富文本编辑器,Fluent Editor,支持表格,图片,表情等

官网:Fluent Editor | 基于 Quill 2.0 的富文本编辑器

安装

npm i @opentiny/fluent-editor quill

使用案例

<template>
    <div class="publish-form-container">
            <!-- TODO  -->
            <div ref="quillEditorRef" class="quill-editor"></div>
      </div>
    </div>
  </template>
  
  <script>
  import Quill from 'quill';
  import 'quill/dist/quill.snow.css';
  
  import FluentEditor from '@opentiny/fluent-editor'
  import '@opentiny/fluent-editor/style.css';
  
  
  export default {
    name: 'PublishForm',
    data() {
      return {
        title: '',
        type: '',
        content: '',
      };
    },
    mounted() {
      this.initQuillEditor();
    },
    methods: {
      initQuillEditor() {
        const self = this;
        this.quillEditor = new FluentEditor(this.$refs.quillEditorRef, {
          modules: {
            toolbar: {
              container:[
                ['undo', 'redo'],
                [{ font: ['SimSun', 'SimHei', 'Microsoft-YaHei', 'KaiTi', 'FangSong', 'Arial', 'Times-New-Roman', 'sans-serif'] }],
                ['bold', 'italic', 'underline', 'strike'],
                ['blockquote', 'code-block'],
                [{ header: 1 }, { header: 2 }],
                [{ list: 'ordered' }, { list: 'bullet' },{ 'list': 'check' }],
                [{ script: 'sub' }, { script: 'super' }],
                [{ indent: '-1' }, { indent: '+1' }],
                [{ direction: 'rtl' }],
                [{ size: ['small', false, 'large', 'huge'] }],
                [{ header: [1, 2, 3, 4, 5, 6, false] }],
                [{ color: [] }, { background: [] }],
                [{ align: [] }],
                ['clean'],
                ['link', 'image'],
                ['better-table', 'file', 'emoji'],
                ['undo', 'redo'],
              ],
              handlers: {
                              'table': function () {
                                  this.quill.getModule('better-table').insertTable(3, 3)
                        },
                },
            },
            table:false,
            'better-table': {
              operationMenu: {
                color: {
                  text: '主题色',
                  colors: [
                    '#ffffff', '#f2f2f2', '#dddddd', '#a6a6a6', '#666666', '#000000',
                    '#c00000', '#ff0000', '#ffc8d3', '#ffc000', '#ffff00', '#fff4cb',
                    '#92d050', '#00b050', '#dff3d2', '#00b0f0', '#0070c0', '#d4f1f5',
                    '#002060', '#7030a0', '#7b69ee', '#1476ff', '#ec66ab', '#42b883',
                  ]
                }
            }},
            file: true,            // 文件上传
            'emoji-toolbar': true, // 插入表情 
          },
          theme: 'snow',
        });
  
        // 监听编辑器内容的变化
        this.quillEditor.on('text-change', function (delta, oldDelta, source) {
          self.content = self.quillEditor.root.innerHTML;
        });
      },
    },
  };
  </script>
  

效果

参考: 一直没找到一个合适的开源富文本?何不尝试下 Fluent Editor,一个基于 Quill 2.0 的富文本编辑器,功能强大,开箱即用!_可以商用的前端开源富文本编辑器-CSDN博客


http://www.kler.cn/a/320777.html

相关文章:

  • Element-ui Select选择器自定义搜索方法
  • Docker:查看镜像里的文件
  • 【Mysql】Mysql的多表查询---多表联合查询(上)
  • 论文《基于现实迷宫地形的电脑鼠设计》深度分析——智能车驱动算法
  • 21.3D surface
  • 2024140读书笔记|《作家榜名著:生如夏花·泰戈尔经典诗选》——你从世界的生命的溪流浮泛而下,终于停泊在我的心头
  • 中间添加一条可以拖拽的分界线,来动态调整两个模块的宽度
  • 如何在调试状态下部署局域网网站
  • Qt C++设计模式->外观模式
  • 牛骨髓油茶,美味不可错过
  • 华为机考练习(golang)
  • 算法.图论-并查集
  • C++:string类写时拷贝|引用计数
  • git使用方法详解(适合新手)
  • 找免费正版高清图片,就上这8个网站。
  • 深度拆解:如何在Facebook上做跨境电商?
  • 【docker】debian中配置docker(2024年9月)
  • YOLOv8-pose+streamlit 实现人体关键点检测/姿态估计系统(后续可用于健身时的姿态估计,训练纠正等....)
  • 智算中心动环监控:构建高效、安全的数字基础设施@卓振思众
  • 从Unity到Godot
  • Ubuntu22.04安装paddle
  • 超越sora,最新文生视频CogVideoX-5b模型分享
  • 4.SPI外设—LCD小案例
  • 拓数派荣获上海数据交易所“数据治理服务商”认证
  • 无线领夹麦克风哪个牌子好,2024年新款领夹麦克风推荐
  • 回归预测 | Matlab基于SO-SVR蛇群算法优化支持向量机的数据多输入单输出回归预测