naive-ui-editor文档
介绍
naive-ui-editor是基于wangEditor 5封装的一个富文本组件,另有用到naive-ui的n-spin
wangEditor 5开源 Web 富文本编辑器,开箱即用,配置简单。支持 JS Vue React 。
安装
bash
pnpm add naive-ui-editor也可以使用npm、yarn等安装。
使用
局部导入
vue
<template>
<NaiveUiEditor
v-model:value="content"
:requestFunc="handleUpload"
></NaiveUiUpload>
</template>
<script setup lang="ts">
import { NaiveUiEditor } from 'naive-ui-editor'
import 'naive-ui-editor/dist/style.css'
import { ref } from 'vue'
const content = ref<string | null>(null)
function handleUpload() {
return new Promise((resolve) => {
setTimeout(() => {
resolve('https://picsum.photos/200/300')
}, 1000)
})
}
</script>
<style scoped></style>全局导入
ts
import { createApp } from 'vue'
import 'naive-ui-editor/dist/style.css'
import NaiveUiEditor from 'naive-ui-editor'
const app = createApp(App)
app.use(NaiveUiEditor, {
requestFunc() {
return new Promise((resolve) => {
setTimeout(() => {
resolve('https://picsum.photos/200/300')
}, 1000)
})
}
})props
| 字段 | 类型 | 描述 | 必传 | 默认值 |
|---|---|---|---|---|
| mode | string | 富文本模式 | 否 | default |
| height | number | 富文本高度 | 否 | 500 |
| disabled | boolean | 富文本是否禁用逻辑:先判断该字段,再判断injectForm?.props?.disabled | 否 | - |
| requestFunc | Function,见下方说明 | 上传文件的函数 | 否 | - |
| v-model:value | string | 富文本内容,需要双向绑定 | 是 | |
| toolbarConfig | Object,见下方说明 | 菜单栏配置 | 否 | |
| editorConfig | Object,同上 | 富文本配置 | 否 | 见下方 |
requestFunc字段定义类型如下:
ts
type RequestFun = (file: File) => Promise<string>toolbarConfig和editorConfig字段定义类型如下:
具体见wangEditor
editorConfig字段默认值如下:
ts
editorConfig: {
placeholder: '请输入内容...',
MENU_CONF: {},
}可以在全局注册传入requestFunc,也可在naive-ui-editor的props传入。props优先级最高。
也可以通过provide注入:
ts
import { provideKey } from 'naive-ui-editor'
app.provide(provideKey, function)提示
如果没有找到requestFunc,naive-ui-editor会报错