国产欧美另类,亚洲精品乱码,免费在线观看视频一区,日本午夜精品视频在线观看

咨詢電話:
15628812133
21
2023/06

Vue——wangEditor子組件

發布時間:2023-06-21 10:13:36
發布者:MaiMai
瀏覽量:
0

上一篇我們已經創建了wangEdit.vue子組件,在里面編譯如下:

dom結構中需要引入工具欄和編輯器兩部分,如圖所示:

1687313982446.png

代碼部分:

<script>

import store from '@/store'

import {Editor, Toolbar} from '@wangeditor/editor-for-vue'


import { DomEditor } from '@wangeditor/editor'



export default {

  name: 'wangEditor',

  components: {Editor, Toolbar},

  props: [

    'editorParams'

  ],

  data() {

    return {

      // 富文本編輯器對象

      editor: null,

      // 富文本內容

      content: null,

      // 富文本占位內容

      placeholder: null,

      // 富文本上傳圖片的地址

      uploadImageUrl: null,

      // 富文本最小高度

      height: '300px',

      // 富文本是否禁用

      isDisabled: false,

      // 工具欄配置

      toolbarConfig: {

        // 顯示指定的菜單項

        // toolbarKeys: [],

        // 隱藏指定的菜單項

        excludeKeys: [

          // 隱藏全屏按鈕

          "fullScreen"

        ],

      },

      // 編輯器配置

      editorConfig: {

        placeholder: '請輸入內容......',

        MENU_CONF: ['uploadImage']

      }

    }

  },

  watch: {

    /**

     * 深度監聽富文本參數

     */

    'editorParams': {

      handler: function (newVal, oldVal) {

        if (newVal != null) {

          this.content = newVal.content

          this.editorConfig.placeholder = this.placeholder

          this.uploadImageUrl = newVal.uploadImageUrl

          this.setUploadImageConfig()

          this.height = newVal.height

          this.isDisabled = newVal.isDisabled

        }

      },

      immediate: true,

      deep: true

    }

  },

  methods: {

    /**

     * 實例化富文本編輯器

     */

    onCreated(editor) {

      this.editor = Object.seal(editor)

      this.setIsDisabled()

    },

    /**

     * 監聽富文本編輯器

     */

    onChange(editor) {

      // console.log('onChange =>', editor.getHtml())

    },

    /**

     * this.editor.getConfig().spellcheck = false

     * 由于在配置中關閉拼寫檢查,值雖然設置成功,但是依然顯示紅色波浪線

     * 因此在富文本編輯器組件掛載完成后,操作 Dom 元素設置拼寫檢查 spellcheck 為假

     */

    async setSpellCheckFasle() {

      let doms = await document.getElementsByClassName('w-e-scroll')

      for (let vo of doms) {

        if (vo) {

          if (vo.children.length > 0) {

            vo.children[0].setAttribute('spellcheck', 'false')

          }

        }

      }

    },

    /**

     * 設置富文本是否禁用

     */

    async setIsDisabled() {

      if (this.editor) {

        this.isDisabled ? (this.editor.disable()) : (this.editor.enable())

      }

    },

    /**

     * 上傳圖片配置

     */

    setUploadImageConfig() {

      this.editorConfig.placeholder = this.placeholder

      this.editorConfig.MENU_CONF['uploadImage'] = {

        fieldName: 'file', // 文件字段名(后端需要對應的字段), 默認值 'wangeditor-uploaded-image'

        maxFileSize: 6 * 1024 * 1024, // 單個文件的最大體積限制,默認為 2M,此次設置為 6M

        maxNumberOfFiles: 30, // 最多可上傳幾個文件,默認為 100

        allowedFileTypes: ['image/*'], // 選擇文件時的類型限制,默認為 ['image/*'] ,若不想限制,則設置為 []

        meta: {// 自定義上傳參數,例如傳遞驗證的 token 等,參數會被添加到 formData 中,一起上傳到服務端

          'TENANT-ID': store.getters.userInfo.tenantId,

          Authorization: 'Bearer ' + store.getters.access_token

        },

        metaWithUrl: false, // 將 meta 拼接到 URL 參數中,默認 false

        headers: {// 設置 HTTP 請求頭信息

          'TENANT-ID': store.getters.userInfo.tenantId,

          Authorization: 'Bearer ' + store.getters.access_token

        },

        server: this.uploadImageUrl, // 上傳圖片接口地址

        withCredentials: false, // 跨域是否傳遞 cookie ,默認為 false

        timeout: 5 * 1000, // 超時時間,默認為 10 秒,此次設置為 5 秒

        // 自定義插入圖片

        customInsert(res, insertFn) {

          // 因為自定義插入導致onSuccess與onFailed回調函數不起作用,自己手動處理

          // 注意此處將返回的文件路徑拼接出來放入,注意應該是完整地址,res為上傳后接口返回的數據

          let file_url = '';

          insertFn(file_url, res.data.fileName, file_url);

        },

        // 上傳之前觸發

        onBeforeUpload(file) {

          return file

        },

        // 上傳進度的回調函數

        onProgress(progress) {

          console.log('progress', progress)

        },

        // 單個文件上傳成功之后

        onSuccess(file, res) {

          console.log(`${file.name} 上傳成功`, res)

        },

        // 單個文件上傳失敗

        onFailed(file, res) {

          console.log(`${file.name} 上傳失敗`, res)

        },

        // 上傳錯誤,或者觸發 timeout 超時

        onError(file, err, res) {

          console.log(`${file.name} 上傳出錯`, err, res)

        }

      }

    },

    /**

     * 獲取編輯器文本內容

     */

    getEditorText() {

      const editor = this.editor

      if (editor != null) {

        return editor.getText()

      }

    },

    /**

     * 獲取編輯器Html內容

     */

    getEditorHtml() {

      const editor = this.editor

      // 下方三行用來獲取編輯器工具欄分組

      // const toolbar = DomEditor.getToolbar(this.editor)

      // const curToolbarConfig = toolbar.getConfig()

      // console.log( curToolbarConfig.toolbarKeys )

      if (editor != null) {

        return editor.getHtml()

      }

    },

    /**

     * 填充編輯器Html內容

     */

    setEditorHtml(html) {

      const editor = this.editor

      if (editor != null) {

        editor.setHtml(html)

      }

    }

  },

  created() {


  },

  mounted() {

    this.setSpellCheckFasle() // 設置拼寫檢查 spellcheck 為假

    document.activeElement.blur() // 取消富文本自動聚焦且禁止虛擬鍵盤彈出

  },

  /**

   * 銷毀富文本編輯器

   */

  beforeDestroy() {

    const editor = this.editor

    if (editor != null) {

      editor.destroy()

    }

  }

}

script>

<style src="@wangeditor/editor/dist/css/style.css">style>


<style lang="less" scoped>

.w-e-full-screen-container {

  z-index: 99;

}


.w-e-for-vue {

  margin: 0;

  border: 1px solid #ccc;


  .w-e-for-vue-toolbar {

    border-bottom: 1px solid #ccc;

  }


  .w-e-for-vue-editor {

    height: auto;


    /deep/ .w-e-text-container {


      .w-e-text-placeholder {

        top: 6px;

        color: #666;

      }


      pre {


        code {

          text-shadow: unset;

        }

      }


      p {

        margin: 5px 0;

        font-size: 14px; // 設置編輯器的默認字體大小為14px

      }

    }

  }

}

style>

有關子組件傳值的內容可以點擊此鏈接>>查看。

到這里,擁有完整功能的富文本編輯器就完成了。

關鍵詞:
返回列表
国产欧美另类,亚洲精品乱码,免费在线观看视频一区,日本午夜精品视频在线观看
久久中文字幕一区二区| 国产精品成人3p一区二区三区| 国产精品超碰| 国产精品.xx视频.xxtv| 国产免费久久| 国产精品对白| 久久亚洲黄色| 红杏一区二区三区| 国产中文在线播放| 精品免费视频| 亚洲va中文在线播放免费| 色爱av综合网| 好看的av在线不卡观看| 亚洲精品一区三区三区在线观看| 亚洲成人不卡| 欧美日韩在线播放视频| 欧美成人精品| 手机精品视频在线观看| 日韩中文字幕一区二区高清99| 日韩精品a在线观看91| 国产精品丝袜在线播放| 久久亚洲黄色| 久久久久91| 免费观看日韩电影| 国产精品久久久久久久久免费高清| 里番精品3d一二三区| 日韩免费高清| 免费在线观看成人| 国产精品国码视频| 成人日韩精品| 好看的亚洲午夜视频在线| 亚洲视频二区| 国产亚洲一卡2卡3卡4卡新区| 精品国产乱码久久久久久樱花| 日韩一区二区三区在线免费观看| 亚洲在线免费| 国产精品一级| 99久久婷婷| 日韩在线成人| 91欧美在线| 麻豆91精品| 国产精品对白| 国产高清一区二区| 日本v片在线高清不卡在线观看| 国产精品国产三级在线观看| 天堂中文av在线资源库| 国产视频一区欧美| 国产日韩免费| 日韩精品不卡一区二区| 亚洲欧美久久久| 免费在线观看视频一区| 国产999精品在线观看| 久久xxxx| 欧美日韩在线观看首页| 蜜桃久久精品一区二区| 国产一区国产二区国产三区| 亚洲欧美日本国产专区一区| 精品国产91| 久久av免费| 国产精品视区| 久久99蜜桃| 日本不卡一区二区三区| 久久精品国内一区二区三区水蜜桃| 捆绑调教美女网站视频一区| 国产欧美日韩一级| 国产综合亚洲精品一区二| 精品三级av在线导航| 日韩综合小视频| 日韩毛片网站| 日韩国产欧美在线播放| 欧美国产另类| 一区二区精彩视频| 天堂中文av在线资源库| 美美哒免费高清在线观看视频一区二区| 欧美aⅴ一区二区三区视频| 日韩国产网站| 国产视频一区二| 视频一区视频二区在线观看| 国产成人调教视频在线观看| 欧美专区一区二区三区| 免费观看亚洲| 欧美成人精品一级| 四虎精品一区二区免费| 激情偷拍久久| 四虎成人av| 国产精品一区二区99| 亚洲小说春色综合另类电影| 欧美影院三区| 麻豆国产在线| 美女视频黄久久| 91在线成人| 美国三级日本三级久久99| 亚洲精品一二三区区别| 日韩在线短视频| 精品欧美日韩精品| 国产精品白丝久久av网站| 日韩精品一区二区三区免费视频 | 国产黄大片在线观看| 欧美一区91| 亚洲精品黄色| 亚洲深夜福利| 精品日韩毛片| 婷婷激情久久| 亚洲三级在线| 鲁大师影院一区二区三区| 成人av动漫在线观看| 91精品国产调教在线观看| 国产欧美一区二区三区精品酒店| 麻豆久久久久久久| 亚洲精品网址| 在线一区电影| 在线成人直播| 夜夜嗨网站十八久久| 99久久久久久中文字幕一区| 伊人久久高清| 欧美日韩国产观看视频| 国产成年精品| 精品亚洲免a| 久久久国产精品网站| 国产精品久久久免费| 国产精品theporn| 欧美黑人巨大videos精品| 国产伦精品一区二区三区千人斩 | 国产精品91一区二区三区| 久久精选视频| 一本大道色婷婷在线| 日韩高清欧美| 久久麻豆精品| 9国产精品视频| 亚洲麻豆一区| 欧美日韩一区二区高清| 国产精品一区二区三区av| 国产精久久久| аⅴ资源天堂资源库在线| 久久免费国产| 亚洲精品123区| 亚洲精品日本| 国产精品天天看天天狠| 高清日韩欧美| 欧美日一区二区| 亚洲手机视频| 国产亚洲在线| 日本不卡视频在线观看| 国产精品久久久网站| 日本精品黄色| 久久精品欧美一区| 午夜亚洲一区| 日韩高清在线不卡| 久久不见久久见中文字幕免费| 国产 日韩 欧美 综合 一区| 日韩三区免费| 久久福利精品| 欧美在线看片| 国产欧洲在线| 丝袜亚洲精品中文字幕一区| 亚洲乱码久久| 久久免费精品| 最新日韩欧美| 国产日韩欧美一区| 日韩欧美一区二区三区在线视频| 亚洲精品一区二区在线看| 日韩欧美高清一区二区三区| 麻豆传媒一区二区三区| 久久在线免费| 日韩福利在线观看| 日韩精品2区| 亚洲精品伊人| 国产白浆在线免费观看| 水野朝阳av一区二区三区| 蜜桃精品视频| 亚洲视频综合| 国产乱子精品一区二区在线观看| 日韩黄色大片网站| 亚洲综合激情在线| 红杏一区二区三区| 免费看精品久久片| 成人在线视频免费看| 视频一区视频二区在线观看| 精品一区二区三区中文字幕视频 | 蜜桃视频一区二区三区| 国产精品流白浆在线观看| 亚洲91视频| 国产欧美在线| 欧美精选一区二区三区| 久久国产免费看| 一区二区小说| 国产免费av国片精品草莓男男| 欧美日韩水蜜桃| 国产精品久久国产愉拍| 国产亚洲精品v| 成人三级高清视频在线看| 日韩精品一级中文字幕精品视频免费观看| 国产精品一级| 午夜一级久久| 肉色欧美久久久久久久免费看| 亚洲日本欧美| 日韩精品一区二区三区免费观影 | 久久青草久久| 久久精品99国产精品| 在线视频观看日韩|