VUE3集成tinymce插件

官方文档地址:

Vue integration | Docs | TinyMCEThe Official TinyMCE Vue.js componenthttps://www.tiny.cloud/docs/integrations/vue/开始集成:

$ npm install --save "@tinymce/tinymce-vue@^4"
 

HBD@DESKTOP-UEFV3JC MINGW64 /d/study/code/vuehtml/antd-demo-v3
$  npm install --save "@tinymce/tinymce-vue@^4"

added 2 packages, and audited 524 packages in 3s

24 packages are looking for funding
  run `npm fund` for details

11 vulnerabilities (3 moderate, 8 high)

To address issues that do not require attention, run:
  npm audit fix

To address all issues (including breaking changes), run:
  npm audit fix --force

Run `npm audit` for details.

引入到main.js

import Editor from '@tinymce/tinymce-vue'//引入组件
app.component("Editor",Editor);//注册到全局组件
import { createApp } from 'vue'
import App from './App.vue'


import router from './router'//引入router路由文件
import toast from './components/toast'; //引入自定义全局公共组件
import mixins from "./mixins"; //引入自定义公共方法和属性


import Antd from 'ant-design-vue';//引入antd
import 'ant-design-vue/dist/antd.css';//引入antd 样式
// import Icon from '@ant-design/icons-vue';//引入antd 样式


import 'viewerjs/dist/viewer.css'//viewer图片查看器样式
import VueViewer from 'v-viewer'//viewer图片查看器js

import '@surely-vue/table/dist/index.css' //导入surely-vue 大数据表格框架样式
import STable from '@surely-vue/table';//导入surely-vue 大数据表格框架js
import { setLicenseKey } from '@surely-vue/table';//购买后去除水印
setLicenseKey('fdafefdaffklfjajuiefhrdbfdnsafjkasyegwfpqfldfd45f48ew468fr5ds');




import Editor from '@tinymce/tinymce-vue'//$ npm install --save "@tinymce/tinymce-vue@^4"


const app = createApp(App);
/**
productionTip设置为 false ,可以阻止 vue 在启动时生成生产提示 ;
开发环境下,Vue 会提供很多警告来帮你对付常见的错误与陷阱。
而在生产环境下,这些警告语句却没有用,反而会增加应用的体积
此外,有些警告检查还有一些小的运行时开销,这在生产环境模式下是可以避免的
*/
app.config.productionTip = true;
app.use(Antd);//antd ui组件
// app.use(Icon);//引用antd图标库
app.use(router);//路由文件
app.use(mixins);//公共方法和属性
app.use(toast);//全局组件文件
app.use(STable);//使用STable大数据表格框架
app.use(VueViewer);//使用vviewer图片插件
app.mount('#app');
app.component("Editor",Editor);


 界面导入组件

<template>
  <div >
    <br>
    <Editor
      api-key="no-api-key"
      :init="{
         height: 500,
         menubar: false,
         plugins: [
           'advlist autolink lists link image charmap print preview anchor',
           'searchreplace visualblocks code fullscreen',
           'insertdatetime media table paste code help wordcount'
         ],
         toolbar:
           'undo redo | formatselect | bold italic backcolor | \
           alignleft aligncenter alignright alignjustify | \
           bullist numlist outdent indent | removeformat | help'
       }"
    />
  </div>
</template>


<script lang="ts">
    import {computed, defineComponent, reactive, toRefs, onMounted, watch, getCurrentInstance} from 'vue';

    export default {
        components: {},
        setup(props, context) {

            const state = reactive({
                wordPage: '测试文档',

            })
            return {
                ...toRefs(state),
            };
        }

    }
</script>

最终界面

注意:vue和tinymce版本是否对应


 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值