vue3 ts 集成 tinymce
首先引入 @tinymce/tinymce-vue
yarn add @tinymce/tinymce-vue -S
我的版本是
然后写一个组件
<template>
<main id="sample">
<Editor v-model="editorData" api-key="j7tvgx4xnptg3cjd63cfnl62z9s78uylw4o7vkkwdljjy91e" :init="init" />
</main>
</template>
<script lang="ts" setup>
import Editor from '@tinymce/tinymce-vue'
import instance from '@/util/http'
let props = defineProps(['editorValue'])
const emit = defineEmits(['update:editorValue', 'update:test2'])
let editorData = ref(props.editorValue)
// 图片上传
const example_image_upload_handler = (blobInfo, success, failure) => {
return new Promise((resolve, reject) => {
const formData = new FormData()
formData.append('file', blobInfo.blob(), blobInfo.filename())
instance
.post('/system/file/upload/webImage', formData, {
headers: {
client: 'WEB_USER',
'Content-Type': 'multipart/form-data'
}
})
.then(res => {
resolve(res.data)
})
})
}
const onChange = editor => {
editor.on('change', () => {
emit('update:editorValue', editorData.value)
})
}
const init = {
selector: '#tinydemo',
language: 'zh_CN',
language_load: true, // 语言包是否开启
promotion: false, //Upgrade是否开启
branding: false, // 移除底部品牌信息
menubar: false, // 移除顶部菜单栏
height: 500,
statusbar: false, // 移除底部状态栏
toolbar_mode: 'sliding', // 工具栏模式
paste_data_images: true, // 粘贴图片
file_picker_types: 'image', // 文件选择类型
image_uploadtab: true, // 图片上传选项卡
plugins: 'link image',
toolbar: ' bold italic backcolor forecolor| fontsize fontfamily | alignleft aligncenter alignright alignjustify | image link emoticons',
image_dimensions: false,
image_description: false,
image_title: false,
a11ychecker_allow_decorative_images: false,
typeahead_urls: false,
block_unsupported_drop: true,
placeholder: '请输入内容...',
images_upload_handler: example_image_upload_handler,
setup: onChange
}
</script>
<style>
// 修改 弹出框在组件之下的问题
.tox-tinymce-aux {
z-index: 3000 !important;
}
</style>
我是个后端 可能写的不太好 欢迎评论
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具