国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Vue組件封裝:基于Vue3+wangeditor富文本組件二次封裝

這篇具有很好參考價(jià)值的文章主要介紹了Vue組件封裝:基于Vue3+wangeditor富文本組件二次封裝。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

1.簡(jiǎn)介

? ? ? ? 開(kāi)源 Web 富文本編輯器,開(kāi)箱即用,配置簡(jiǎn)單。一個(gè)產(chǎn)品的價(jià)值,就在于解決用戶的問(wèn)題,提高效率、降低成本、增加穩(wěn)定性和擴(kuò)展性。wangEditor 不是為了做而做,也不是單純的模仿誰(shuí),而是經(jīng)過(guò)上述問(wèn)題分析之后,給出一個(gè)系統(tǒng)的解決方案。旨在真正去解決用戶的問(wèn)題,產(chǎn)出自己的價(jià)值。更多資料見(jiàn)官網(wǎng)地址:https://www.wangeditor.com/。

2.安裝

安裝 editor

yarn add @wangeditor/editor
# 或者 npm install @wangeditor/editor --save

?安裝 React 組件(可選)

yarn add @wangeditor/editor-for-react
# 或者 npm install @wangeditor/editor-for-react --save

?安裝 Vue2 組件(可選)

yarn add @wangeditor/editor-for-vue
# 或者 npm install @wangeditor/editor-for-vue --save

?安裝 Vue3 組件(可選)

yarn add @wangeditor/editor-for-vue@next
# 或者 npm install @wangeditor/editor-for-vue@next --save

?CDN

<!-- 引入 css -->
<link href="https://unpkg.com/@wangeditor/editor@latest/dist/css/style.css" rel="stylesheet">

<!-- 引入 js -->
<script src="https://unpkg.com/@wangeditor/editor@latest/dist/index.js"></script>
<script>
    var E = window.wangEditor; // 全局變量
</script>

?3.封裝代碼

?./index.vue

 1 <template>
 2   <div class="v-rich-text">
 3     <div v-if="isSplitTool" :id="toolId" class="toolbar-container"></div>
 4     <div v-if="isSplitTool" :id="textId" class="text-container"></div>
 5     <div v-if="!isSplitTool" :id="textId"></div>
 6   </div>
 7 </template>
 8 
 9 <script lang="ts">
10 import { onMounted, onBeforeUnmount, ref, toRefs, watch } from "vue";
11 import WangEditor from "wangeditor";
12 import { basicProps } from "./props";
13 
14 export default {
15   name: "VRichText",
16   props: basicProps,
17   emits: ["change", "update:content"],
18   setup(props, { emit }) {
19     const { toolId, textId, content, isSplitTool } = toRefs(props);
20     let instance: any;
21     const textContent = ref(content.value);
22 
23     watch(
24       () => props.content,
25       (nv) => {
26         if (nv !== instance.txt.html()) {
27           instance.txt.html(nv);
28           textContent.value = nv;
29         }
30       }
31     );
32 
33     onMounted(() => {
34       if (isSplitTool.value) {
35         instance = new WangEditor("#" + toolId.value, "#" + textId.value);
36       } else {
37         instance = new WangEditor("#" + textId.value);
38       }
39       Object.assign(instance.config, {
40         uploadImgShowBase64: true,
41         showFullScreen: false,
42         zIndex: 100,
43         focus: false,
44         onchange() {
45           emit("update:content", instance.txt.html());
46           emit("change", instance.txt.html());
47         },
48 
49     onBeforeUnmount(() => {
50       instance.destroy();
51       instance = null;
52     });
53 
54     return {
55       toolId,
56       textId,
57       textContent,
58       isSplitTool,
59     };
60   },
61 };
62 </script>
63 
64 <style lang="scss" scoped>
65 .v-rich-text {
66   height: 100%;
67   display: flex;
68   flex-direction: column;
69 
70   .text-container {
71     flex: 1;
72     height: 0;
73   }
74 }
75 </style>
76 

??./props.ts

 1 export const basicProps = {
 2   // 工具欄ID
 3   toolId: {
 4     type: String,
 5     default: "toolbar-container",
 6   },
 7   // 內(nèi)容ID
 8   textId: {
 9     type: String,
10     default: "text-container",
11   },
12   // 富文本內(nèi)容
13   content: String,
14   // 是否拆分tool欄
15   isSplitTool: {
16     type: Boolean,
17     default: true,
18   },
19 };

?文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-844268.html

?4.組件展示

Vue組件封裝:基于Vue3+wangeditor富文本組件二次封裝

?

到了這里,關(guān)于Vue組件封裝:基于Vue3+wangeditor富文本組件二次封裝的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Vue3使用富文本框(wangeditor)

    Vue3使用富文本框(wangeditor)

    畢業(yè)涉及中使用到了富文本框,所以學(xué)習(xí)使用了wangeditor富文本框,現(xiàn)進(jìn)行總結(jié) 1.安裝 2.配置wangeditor組件(src/components/wangeditor.vue) 3.父組件中

    2024年02月15日
    瀏覽(16)
  • vue3項(xiàng)目使用富文本編輯器-wangeditor

    vue3項(xiàng)目使用富文本編輯器-wangeditor

    1.下載依賴(lài) 2.插件版本 ?3.使用 引入css和組件 配置方法 模板(標(biāo)簽)中插入 效果 ?

    2024年02月09日
    瀏覽(33)
  • vue3 wangeditor/editor富文本使用和編輯

    vue3 wangeditor/editor富文本使用和編輯

    第一步:安裝 第二步:使用 最終效果圖: 第四:工具欄配置 進(jìn)入官方demo:https://www.wangeditor.com/demo/index.html 打開(kāi)之后,按F12在控制臺(tái)輸入 toolbar.getConfig()? 查看工具欄的默認(rèn)配置。 ?如果有不需要的工具欄項(xiàng),可以在? toolbarConfig.excludeKeys 中配置

    2024年01月21日
    瀏覽(22)
  • Vue3學(xué)習(xí)(二十)- 富文本插件wangeditor的使用

    Vue3學(xué)習(xí)(二十)- 富文本插件wangeditor的使用

    學(xué)習(xí)、寫(xiě)作、工作、生活,都跟心情有很大關(guān)系,甚至有時(shí)候我更喜歡一個(gè)人獨(dú)處,戴上耳機(jī)coding的感覺(jué)。 明顯現(xiàn)在的心情,比中午和上午好多了,心情超棒的,靠自己解決了兩個(gè)問(wèn)題: 新增的時(shí)候點(diǎn)擊 TreeSelect 控件控制臺(tái)會(huì)給出報(bào)錯(cuò) 分類(lèi)新增和編輯時(shí),報(bào)錯(cuò)父類(lèi)和電子書(shū)

    2024年03月09日
    瀏覽(26)
  • vue3 基于element plus對(duì)el-pagination進(jìn)行二次封裝

    在vue3項(xiàng)目中,如果每個(gè)列表頁(yè)都敲一遍分頁(yè)方法,顯然是不合理的,那么,下面我將基于element plus對(duì)el-pagination進(jìn)行二次封裝,使用vue3語(yǔ)法糖格式,廢話不多說(shuō),開(kāi)干。

    2024年02月12日
    瀏覽(29)
  • uniapp富文本編輯-editor-vue2-vue3-wangeditor

    uniapp富文本編輯-editor-vue2-vue3-wangeditor

    不管vue2還是vue3,都推薦官方的editor組件, 官方手冊(cè)?https://uniapp.dcloud.net.cn/component/editor.html 除了“ 微信小程序 ”,其他小程序想要使用editor組件實(shí)現(xiàn)富文本編輯,很難 ??????? 第三方組件wangeditor在vue2,vue3在H5表現(xiàn)都很好,但是app環(huán)境下直接報(bào)錯(cuò) reportJSException excep

    2024年03月10日
    瀏覽(25)
  • 基于Vue+wangeditor實(shí)現(xiàn)富文本編輯

    基于Vue+wangeditor實(shí)現(xiàn)富文本編輯

    一個(gè)網(wǎng)站需要富文本編輯器功能的原因有很多,以下是一些常見(jiàn)的原因: 方便用戶編輯內(nèi)容:富文本編輯器提供了類(lèi)似于Office Word的編輯功能,使得那些不太懂HTML的用戶也能夠方便地編輯網(wǎng)站內(nèi)容。 提高用戶體驗(yàn):富文本編輯器注重用戶體驗(yàn),具有輕量、可定制等特點(diǎn),使

    2024年02月14日
    瀏覽(25)
  • 基于 Vue3 + Webpack5 + Element Plus Table 二次構(gòu)建表格組件

    基于 Vue3 + Webpack5 + Element Plus Table 二次構(gòu)建表格組件

    基于 Vue3 + Webpack5 + Element Plus Table 二次構(gòu)建表格組件,開(kāi)箱即用 A Vue 3.x Table Component built on Webpack 5 該組件庫(kù)可供學(xué)習(xí)、參考和用于二次開(kāi)發(fā)。 1.基于 Webpack 5 構(gòu)建 2.全面支持 Vue 3 3.支持 JSON 序列化表格快速配置 4.已內(nèi)置 Pagination 分頁(yè) 5.支持自定義 prop 列名 6.支持單元格內(nèi)容自

    2024年04月13日
    瀏覽(30)
  • Vue3 代碼塊高亮顯示并可使用富文本編輯器編輯(highlight.js + wangEditor)

    Vue3 代碼塊高亮顯示并可使用富文本編輯器編輯(highlight.js + wangEditor)

    在Vue項(xiàng)目中實(shí)現(xiàn)以下功能: ??功能1. 在頁(yè)面中顯示代碼,并將其中的高亮顯示。 ??功能2. 允許對(duì)代碼塊進(jìn)行編輯,編輯時(shí)代碼也高亮顯示。 ??功能3. 可在編輯器中添加多個(gè)代碼塊,動(dòng)態(tài)渲染代碼高亮。 ? Step1: 安裝所需插件(本文使用npm安裝,若需

    2023年04月21日
    瀏覽(66)
  • vue3+elementplus基于el-table-v2封裝公用table組件

    vue3+elementplus基于el-table-v2封裝公用table組件

    主要是針對(duì)表格進(jìn)行封裝,不包括查詢表單和操作按鈕。 梳理出系統(tǒng)中通用表格的功能項(xiàng),即表格主體的所有功能,生成columns列頭數(shù)據(jù)、生成data表體數(shù)據(jù)、拖拉列寬、分頁(yè)、生成中文列名、自定義列寬width 效果如下: 父級(jí)引用: 父組件: 子組件: 子組件: 父組件: 以上

    2024年02月10日
    瀏覽(27)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包