本指南展示了如何使用 TinyMCE Vue.js 组件 将 TinyMCE 打包到 Vue.js 应用程序中。
前提条件
此过程需要:
Node.js LTS(推荐)。
Vue CLI(可选)。
步骤
使用 Create Vue Tool 创建一个名为
tinymce-vue-demo的新 Vue 项目。从命令行或命令提示符创建一个 Vue.js 3.x 项目:
tinymce-vue-demo。npm create vue@3
如果需要 Vue.js 2.x 项目,请改用:
npm create vue@2
根据 Vue FAQ,Vue 2 将于 2023 年底停止支持。
按照提示操作,并将项目名称输入为
tinymce-vue-demo。
进入新创建的目录。
cd tinymce-vue-demo
安装
tinymce和tinymce-vue包。对于 Vue.js 3.x 用户:
npm install tinymce "@tinymce/tinymce-vue"
对于 Vue.js 2.x 用户:
npm install tinymce "@tinymce/tinymce-vue@^3"
创建
src/editor.js并设置其内容为:// Add the @tinymce/tinymce-vue wrapper to the bundle import Editor from '@tinymce/tinymce-vue'; // Ensure TinyMCE is imported to register the global variable required by other components import 'tinymce/tinymce'; // DOM model import 'tinymce/models/dom/model'; // Theme import 'tinymce/themes/silver'; // Toolbar icons import 'tinymce/icons/default'; // Editor styles import 'tinymce/skins/ui/oxide/skin.min.css'; // Import plugins import 'tinymce/plugins/advlist'; import 'tinymce/plugins/autolink'; import 'tinymce/plugins/link'; import 'tinymce/plugins/image'; import 'tinymce/plugins/lists'; import 'tinymce/plugins/table'; import 'tinymce/plugins/code'; import 'tinymce/plugins/help'; // Include resources that a plugin lazy-loads at the run-time import 'tinymce/plugins/help/js/i18n/keynav/en.js'; import 'tinymce/plugins/wordcount'; // Content styles, including inline UI like fake cursors import 'tinymce/skins/content/default/content.js'; import 'tinymce/skins/ui/oxide/content.js'; // Export Editor component for use in Vue components export default Editor;
更新
src/App.vue以导入并配置Editor。<template> <div> <h1>TinyMCE Vue Demo</h1> <Editor v-model="content" :init="editorConfig" licenseKey="gpl" /> </div> </template> <script> import Editor from './editor.js'; export default { name: 'App', components: { Editor }, data() { return { content: '<p>This is the initial content of the editor.</p>', editorConfig: { height: 500, plugins: 'advlist autolink lists link image table code help wordcount', toolbar: 'undo redo | blocks | bold italic | alignleft aligncenter alignright | bullist numlist | help' } }; } }; </script>要启动开发服务器,请运行:
npm run dev
其他资源
关于报告问题,请访问:TinyMCE Vue.js issues。
有关
tinymce-vue包装器的更多示例,请参阅:the tinymce-vue storybook。有关打包的信息,请参阅:Introduction to bundling TinyMCE
有关集成 TinyMCE 高级插件的指南,请参阅:Using premium plugins。
有关自定义的信息:
TinyMCE 集成,请参阅:Vue.js framework Technical Reference。
TinyMCE,请参阅:Basic setup。
Vue.js 应用程序,请参阅:the Vue.js documentation。