最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

React中使用UMEditor的方法示例

 更新時間:2019年12月27日 09:23:37   作者:相門城下  
這篇文章主要介紹了React中使用UMEditor的方法示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

最近項目中需要使用富文本編輯器,參考了運營小姐姐日常使用平臺上的編輯器,最后考慮采用百度的UMEditor。因為輕量,功能和配置簡單,沒有很多定制化的功能,所以沒采用UEditor。不過我后續(xù)會出一篇文章將UEditor的二次開發(fā)。

umeditor的引入

組件設(shè)計

首先看一下組件大致的內(nèi)容:

1.組件props:


2.組件關(guān)鍵的成員屬性:


3.簡單的render:


4.UMEditor的實例化


UMEditor源碼里需要改動的主要就是圖片的請求了,配置中的imgUrl我傳的是一個方法,這個方法中請求后臺并返回Promise<{url:string}>

源碼修改

源碼修改兩個文件

image.js中兩處更改

autoupload.js中一處修改

UMEditor的源碼存放在dll目錄下,打包時會被webpack拷貝道相應(yīng)的目錄下,UMEDITOR_HOME_URL和這個目錄路徑保持一致

umeditor的依賴處理

文件合并

由于依賴文件過多,我們使用gulp合并一下


core文件夾下的依賴合并為core.min.js,其他plugin,ui,addapter也一樣合并為相應(yīng)的min.js

原本由editor_api.js引入依賴的,現(xiàn)在我們自己寫個方法引入。

依賴加載

組件中定義需要引入的文件,這是一個二維數(shù)組,同級的文件按順序引入,不同級別的可以并發(fā)請求,比如:['/third-party/jquery.min.js', '/third-party/template.min.js']中的兩個文件同時請求,但是保證它們都load完再請求后面的文件

加載的時候使用SyncRequire方法

使用一步迭代器實現(xiàn)可控加載


loadDep負(fù)責(zé)文件加載,具體如下:


SyncRequire內(nèi)部維護(hù)一個異步迭代器,迭代的對象是每一個文件的加載。最后使用for await進(jìn)行異步迭代


如果是一個文件路徑數(shù)組,則說明這個數(shù)組中的文件可以同時使用loadDep加載,如果是一個文件路徑字符串,則說明這個文件加載完才可以加載后面的文件。loaders具體實現(xiàn)如下

好了,有了這個SyncRequire方法,就可以既同時又順序加載我們的外部js或者css文件了,最后可以在控制臺中驗證效果

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • React組件創(chuàng)建與事件綁定的實現(xiàn)方法

    React組件創(chuàng)建與事件綁定的實現(xiàn)方法

    react事件綁定時。this并不會指向當(dāng)前DOM元素。往往使用bind來改變this指向,今天通過本文給大家介紹React事件綁定的方式,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧
    2022-12-12
  • 詳解使用React全家桶搭建一個后臺管理系統(tǒng)

    詳解使用React全家桶搭建一個后臺管理系統(tǒng)

    本篇文章主要介紹了使用React全家桶搭建一個后臺管理系統(tǒng),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-11-11
  • React?Diffing?算法完整指南(示例詳解)

    React?Diffing?算法完整指南(示例詳解)

    Diffing?算法是?React?用于比較兩棵虛擬?DOM?樹差異的算法,用來確定需要更新的部分,從而最小化?DOM?操作,這篇文章主要介紹了React?Diffing?算法完整指南,需要的朋友可以參考下
    2024-12-12
  • 如何在React項目中引入字體文件并使用詳解

    如何在React項目中引入字體文件并使用詳解

    我們項目中通常會需要引入字體,所以下面這篇文章主要給大家介紹了關(guān)于如何在React項目中引入字體文件并使用的相關(guān)資料,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2022-08-08
  • react-dnd?API拖拽工具詳細(xì)用法示例

    react-dnd?API拖拽工具詳細(xì)用法示例

    這篇文章主要為大家介紹了react-dnd?API拖拽工具的詳細(xì)用法示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-10-10
  • React-Native之定時器Timer的實現(xiàn)代碼

    React-Native之定時器Timer的實現(xiàn)代碼

    本篇文章主要介紹了React-Native之定時器Timer的實現(xiàn)代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-10-10
  • React hooks使用規(guī)則和作用

    React hooks使用規(guī)則和作用

    這篇文章主要介紹了react hooks實現(xiàn)原理,文中給大家介紹了useState dispatch 函數(shù)如何與其使用的 Function Component 進(jìn)行綁定,節(jié)后實例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2023-03-03
  • React+TypeScript+webpack4多入口配置詳解

    React+TypeScript+webpack4多入口配置詳解

    這篇文章主要介紹了React+TypeScript+webpack4多入口配置詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08
  • 詳解React開發(fā)必不可少的eslint配置

    詳解React開發(fā)必不可少的eslint配置

    本篇文章主要介紹了詳解React開發(fā)必不可少的eslint配置,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-02-02
  • react實現(xiàn)拖拽模態(tài)框

    react實現(xiàn)拖拽模態(tài)框

    這篇文章主要為大家詳細(xì)介紹了react實現(xiàn)拖拽模態(tài)框,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-08-08

最新評論

宁城县| 镇宁| 桦南县| 安达市| 西吉县| 巨野县| 集安市| 安龙县| 淮安市| 石泉县| 丹凤县| 宁波市| 岐山县| 瑞安市| 绍兴县| 高陵县| 盘锦市| 来宾市| 元氏县| 青冈县| 崇明县| 大冶市| 普安县| 辽阳县| 平乡县| 和龙市| 靖江市| 聊城市| 连州市| 泸水县| 塔城市| 石林| 吕梁市| 鸡西市| 河北省| 教育| 三亚市| 宜良县| 五华县| 渑池县| 滨海县|