赞
踩
1、安装(两个都要)
npm install @wangeditor/editor --save
npm install @wangeditor/editor-for-vue@next --save
2、使用
- <template>
- <div style="border: 1px solid #ccc">
- <Toolbar
- style="border-bottom: 1px solid #ccc"
- :editor="editorRef"
- :defaultConfig="toolbarConfig"
- :mode="mode"
- />
- <Editor
- style="height: 500px; overflow-y: hidden;"
- v-model="valueHtml"
- :defaultConfig="editorConfig"
- :mode="mode"
- @onCreated="handleCreated"
- />
- </div>
- </template>
3、Script
- <script>
- import '@wangeditor/editor/dist/css/style.css' // 引入 css
-
- import { onBeforeUnmount, ref, shallowRef, onMounted } from 'vue'
- import { Editor, Toolbar } from '@wangeditor/editor-for-vue'
-
- export default {
- components: { Editor, Toolbar },
- setup() {
- // 编辑器实例,必须用 shallowRef
- const editorRef = shallowRef()
-
- // 内容 HTML
- const valueHtml = ref('<p>hello</p>')
-
- // 模拟 ajax 异步获取内容
- onMounted(() => {
- setTimeout(() => {
- valueHtml.value = '<p>模拟 Ajax 异步设置内容</p>'
- }, 1500)
- })
-
- const toolbarConfig = {}
- const editorConfig = { placeholder: '请输入内容...' }
-
- // 组件销毁时,也及时销毁编辑器
- onBeforeUnmount(() => {
- const editor = editorRef.value
- if (editor == null) return
- editor.destroy()
- })
-
- const handleCreated = (editor) => {
- editorRef.value = editor // 记录 editor 实例,重要!
- }
-
- return {
- editorRef,
- valueHtml,
- mode: 'default', // 或 'simple'
- toolbarConfig,
- editorConfig,
- handleCreated
- };
- }
- }
- </script>
4、效果图
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。