zoukankan      html  css  js  c++  java
  • vue中是使用富文本编辑器vue-quill-edit

    之前使用的富文本编辑器是uEditor,kindEditor,感觉不太方便

    近期项目vue单页面,就使用这个编辑器组件吧!

    一、安装  cnpm install vue-quill-editor

    二、引入 

      在main.js引入并注册:

    import  VueQuillEditor from 'vue-quill-editor'
    // require styles 引入样式
    import 'quill/dist/quill.core.css'
    import 'quill/dist/quill.snow.css'
    import 'quill/dist/quill.bubble.css'
    
    Vue.use(VueQuillEditor)

    三、封装组件:

      

    <template>
        <div class="quill_box">
          <quill-editor 
            v-model="content" 
            ref="myQuillEditor" 
            :options="editorOption" 
            @blur="onEditorBlur($event)" @focus="onEditorFocus($event)"
            @change="onEditorChange($event)">
          </quill-editor>
        </div>
        
    </template> 
    <script>
    import Bus from "../../assets/utils/eventBus";
    
    
    
    export default {
      data() {
        return {
          content:'',
          editorOption: {
            placeholder: "请编辑内容",
            modules: {
              toolbar: [
                ["bold", "italic", "underline", "strike"],
                ["blockquote", "code-block"],
                [{ list: "ordered" }, { list: "bullet" }],
                [{ script: "sub" }, { script: "super" }],
                [{ indent: "-1" }, { indent: "+1" }],
                [{ size: ["small", false, "large", "huge"] }],
                [{ font: [] }],
                [{ color: [] }, { background: [] }],
                [{ align: [] }],
                [ "image"]
              ]
            }
          }
        };
      },
      props:[
        'contentDefault'
      ],
      watch:{
        contentDefault:function(){
          this.content = this.contentDefault;
        }
      },
      mounted:function(){
        this.content = this.contentDefault;
      },
      methods: {
        onEditorBlur() {
          //失去焦点事件
          // console.log('失去焦点');
        },
        onEditorFocus() {
          //获得焦点事件
          // console.log('获得焦点事件');
        },
        onEditorChange() {
          //内容改变事件
          // console.log('内容改变事件');
          Bus.$emit('getEditorCode',this.content)
        }
      }
    };
    </script> 
    
    <style lang="less">
      .quill_box{
        .ql-toolbar.ql-snow{border-color:#dcdfe6;}
        .ql-container{height:200px !important;border-color:#dcdfe6;}
        .ql-snow .ql-picker-label::before {
          position: relative;
          top: -10px;
        }
        .ql-snow .ql-color-picker .ql-picker-label svg, .ql-snow .ql-icon-picker .ql-picker-label svg{position: relative;top:-6px;}
      }
    </style>

    四、引入使用:

    <my-editor :contentDefault="contentDefault"></my-editor>
    components:{
        myEditor:myEditorComponent
      },
  • 相关阅读:
    数1的个数
    找水王2
    书店促销
    返回一个二维整数数组中最大联通子数组的和
    敏捷软件开发读书笔记(三)
    软件工程团队开发——第一次冲刺会议总结
    返回一个二维整数数组中最大联通子数组的和
    结对项目开发电梯调度
    《最后期限》——读书笔记03
    最后期限——阅读笔记2
  • 原文地址:https://www.cnblogs.com/LChenglong/p/9518531.html
Copyright © 2011-2022 走看看