vue中使用mavonEditor

使用mavonEditor

mavonEditor既可作为markdownw文本编辑使用,也可作为markdown文本解析使用
官方文档:https://github.com/hinesboy/mavonEditor

使用起来也非常简单

首先使用npm install mavon-editor --s安装依赖就能直接使用了

在main,js全局注册

import mavonEditor from "mavon-editor";
import "mavon-editor/dist/css/index.css";

Vue.use(mavonEditor);
作为编辑器使用:
<template>
  <div>
    <mavon-editor
      v-model="context"
      @imgAdd="$imgAdd"
      @imgDel="$imgDel"
      :toolbars="toolbars"
    />
  </div>
</template>

<script>
export default {
  data() {
    return {
      context: " ", //输入的数据
      toolbars: {
        bold: true, // 粗体
        italic: true, // 斜体
        header: true, // 标题
        underline: true, // 下划线
        mark: true, // 标记
        superscript: true, // 上角标
        quote: true, // 引用
        ol: true, // 有序列表
        link: true, // 链接
        imagelink: true, // 图片链接
        help: true, // 帮助
        code: true, // code
        subfield: true, // 是否需要分栏
        fullscreen: true, // 全屏编辑
        readmodel: true, // 沉浸式阅读
        /* 1.3.5 */
        undo: true, // 上一步
        trash: true, // 清空
        save: true, // 保存(触发events中的save事件)
        /* 1.4.2 */
        navigation: true, // 导航目录
      },
    };
  },
  methods: {
    // 绑定@imgAdd event
    $imgAdd() {
      console.log("添加图片");
    },
    $imgDel() {
      console.log("删除图片");
    },
  },
};
</script>

效果图
在这里插入图片描述

作为文本解析使用
<template>
  <div id="preview">
    <mavon-editor
      class="md"
      :value="context"
      :subfield="prop.subfield"
      :defaultOpen="prop.defaultOpen"
      :toolbarsFlag="prop.toolbarsFlag"
      :editable="prop.editable"
      :scrollStyle="prop.scrollStyle"
    ></mavon-editor>
  </div>
</template>

<script>
export default {
  data() {
    return {
      context:
        "[连接](https://maosource.com)<br>" +
        "图片<br>" +
        " <img width='200' height='100' alt=文件 src= https://files.maosource.com/20211108/889e273d2c1c44ecad229dd0100564cc.jpg />",
    };
  },
  computed: {
    prop() {
      return {
        subfield: false, // 单双栏模式
        defaultOpen: "preview", //edit: 默认展示编辑区域 , preview: 默认展示预览区域
        editable: false,
        toolbarsFlag: false,
        scrollStyle: true,
      };
    },
  },
};
</script>

效果图
在这里插入图片描述

### 集成和配置 mavon-editor 为了在 Vue 3 项目中集成 `mavon-editor`,需要按照特定步骤操作以确保组件能够正常工作并提供预期的功能。 #### 安装依赖包 安装 `mavon-editor` 及其样式文件是第一步。通过 npm 或 yarn 来完成此过程: ```bash npm install mavon-editor --save ``` 或者使用 yarn: ```bash yarn add mavon-editor ``` 这一步骤会下载必要的库到项目的 node_modules 文件夹内[^2]。 #### 引入 mavon-editor 并注册为全局组件 为了让整个应用程序都可以访问 `mavon-editor` 组件,在 main.js 中引入该模块及其 CSS 资源,并调用 `app.use()` 方法来注册这个插件: ```javascript import { createApp } from 'vue' import App from './App.vue' // 导入 mavonEditor 和对应的 css import mavonEditor from 'mavon-editor' import 'mavon-editor/dist/css/index.css' const app = createApp(App) // 使用 mavonEditor 插件 app.use(mavonEditor) app.mount('#app') ``` 这段代码展示了如何将 `mavon-editor` 注册成为全局可用的组件,从而可以在任何地方轻松导入而不必重复定义。 #### 创建富文本编辑器实例 接下来是在页面上创建实际使用的富文本编辑区域。可以通过编写下面这样的模板结构来实现这一点: ```html <template> <div id="editor"> <!-- 这里放置其他 HTML 结构 --> <!-- 添加一个 mavonEditor 实例 --> <mavon-editor v-model="content"></mavon-editor> <!-- 更多的内容可以继续添加在这里 --> </div> </template> <script setup lang="ts"> import { ref, defineComponent } from "vue"; defineComponent({ name: "MyEditor", }); let content = ref(""); </script> ``` 上述代码片段展示了一个简单的例子,其中包含了用于显示/编辑 Markdown 文本的 `<mavon-editor>` 标签,并绑定了一个名为 `content` 的响应式变量作为数据绑定目标。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值