0 1 840

文本编辑器 为何选择 wangEditor 简洁、轻量级、文档齐全 万星项目 Github Star 1w+ npm 周下载量 1w+ CDN 月下载量百万+(来自 jsdelivr) 开源团队维护,非个人单兵作战

html5 超文本编辑器,非常好用的富文本编辑器_图一

基本使用

npm 安装 npm i wangeditor --save

CDN 链接 https://cdn.jsdelivr.net/npm/wangeditor@latest/dist/wangEditor.min.js

使用 js 外链引入

<div id="div1">
    <p>欢迎使用 <b>wangEditor</b> 富文本编辑器</p>
</div>

<!-- 引入 wangEditor.min.js -->
<script type="text/javascript">
    const E = window.wangEditor
    const editor = new E('#div1')
    // 或者 const editor = new E( document.getElementById('div1') )
    editor.create()
</script>

使用 npm 安装

import E from 'wangeditor'
const editor = new E('#div1')
// 或者 const editor = new E( document.getElementById('div1') )
editor.create()

使用 textarea

<div id="div1">
    <p>欢迎使用 <b>wangEditor</b> 富文本编辑器</p>
</div>
<textarea id="text1" style="width:100%; height:200px;"></textarea>

<script src="https://cdn.bootcss.com/jquery/3.2.1/jquery.min.js"></script>
<!-- 引入 wangEditor.min.js -->
<script type="text/javascript">
    const E = window.wangEditor
    const editor = new E('#div1')
    const $text1 = $('#text1')
    editor.config.onchange = function (html) {
        // 第二步,监控变化,同步更新到 textarea
        $text1.val(html)
    }
    editor.create()

    // 第一步,初始化 textarea 的值
    $text1.val(editor.txt.html())
</script>

配置菜单

编辑器创建之前

editor.config.menus

editor.config.excludeMenus

【注意】不要同时使用 editor.config.menus 和 editor.config.excludeMenus,以免引起冲突和混乱。

使用 editor.config.menus 定义显示哪些菜单和菜单的顺序。

<div id="div1">
    <p>欢迎使用 wangEditor 编辑器</p>
</div>

<!-- 引入 wangEditor.min.js -->
<script type="text/javascript">
    const E = window.wangEditor
    const editor = new E('#div1')

    // 配置菜单栏,删减菜单,调整顺序
    editor.config.menus = [
        'bold',
        'head',
        'link',
        'italic',
        'underline'
    ]

    editor.create()
</script>

使用 editor.config.excludeMenus 当只需剔除少数菜单的时候,直接设置不需要的菜单

<div id="div1">
    <p>欢迎使用 wangEditor 编辑器</p>
</div>

<!-- 引入 wangEditor.min.js -->
<script type="text/javascript">
    const E = window.wangEditor
    const editor = new E('#div1')

    // 配置菜单栏,设置不需要的菜单
    editor.config.excludeMenus = [
        'emoticon',
        'video'
    ]

    editor.create()
</script>

默认情况下会显示所有的菜单,配置如下:

// 默认情况下,显示所有菜单
editor.config.menus = [
    'head',
    'bold',
    'fontSize',
    'fontName',
    'italic',
    'underline',
    'strikeThrough',
    'indent',
    'lineHeight',
    'foreColor',
    'backColor',
    'link',
    'list',
    'todo',
    'justify',
    'quote',
    'emoticon',
    'image',
    'video',
    'table',
    'code',
    'splitLine',
    'undo',
    'redo',
]

上传图片配置服务端接口

const E = window.wangEditor
const editor = new E('#div1')

// 配置 server 接口地址
editor.config.uploadImgServer = '/upload-img'

editor.create()

server 接口返回格式,重要!!! 接口要返回 application/json 格式,格式要求如下:

{
    // errno 即错误代码,0 表示没有错误。
    //       如果有错误,errno != 0,可通过下文中的监听函数 fail 拿到该错误码进行自定义处理
    "errno": 0,

    // data 是一个数组,返回图片Object,Object中包含需要包含url、alt和href三个属性,它们分别代表图片地址、图片文字说明和跳转链接,alt和href属性是可选的,可以不设置或设置为空字符串,需要注意的是url是一定要填的。
    "data": [
        {
            url: "图片地址",
            alt: "图片文字说明",
            href: "跳转链接"
        },
        {
            url: "图片地址1",
            alt: "图片文字说明1",
            href: "跳转链接1"
        },
        "……"
    ]
}

更多配置详见

https://www.wangeditor.com/doc/
下载所需: 5金币 下载 演示
[分类]
[来源] https://www.wangeditor.com/
[声明] 本站资源来自用户分享,如损害你的权益请联系客服QQ:120074275给予处理。