如何使用 vue js 在 tinymce 编辑器中插入内容?
How to insert content inside tinymce editor using vue js?
我想使用 vue js 模板中的按钮在 tinymce 编辑器中插入 <span class="some-class">text</span>
之类的内容。我怎样才能使用 tinymce-vue 包装器完成它?
这是代码:
<template>
<tinymce-editor
api-key="my-api-key-here"
/>
<button @click="addContent">button</button>
</template>
import Editor from '@tinymce/tinymce-vue'
export default {
components: {
tinymceEditor: Editor
},
methods: {
addContent () {
tinymce.activeEditor.setContent('<span class="some-class">text</span>');
}
}
}
编辑:
我还使用 npm i tinymce --save
安装了 tinymce
并将导入 import tinymce from 'tinymce/tinymce
添加到上面的代码中。现在我不再收到错误 'tinymce' is not defined
,但编辑器也没有出现。
如果您想将内容插入 TinyMCE,您应该使用它的 API 来这样做:
https://www.tiny.cloud/docs/api/tinymce/tinymce.editor/#setcontent
https://www.tiny.cloud/docs/api/tinymce/tinymce.editor/#insertcontent
例如:
tinymce.activeEditor.setContent('<span class="some-class">text</span>');
tinymce.activeEditor.insertContent('<span class="some-class">text</span>');
在您的按钮点击事件处理程序中,您可以调用 TinyMCE 的 .setContent()
方法来设置编辑器内容。
这是一个演示:
https://codesandbox.io/s/set-content-in-tinymce-in-vue-jzciu
别忘了,tinymce-vue
不包含 TinyMCE 本身的代码。您要么必须使用 API 密钥(您可以在 tiny.cloud) or use a self-hosted installation of TinyMCE. (For more info, see Step 6, here: https://www.tiny.cloud/docs/integrations/vue/#procedure 免费获得)
如果您想在带有 typscritt 的 vue 中使用 tinymce 来设置您的内容并避免未定义的错误,您需要将 tinyMCE 导入为
import { getTinymce } from '@tinymce/tinymce-vue/lib/cjs/main/ts/TinyMCE';
然后你可以设置你的内容
getTinymce().activeEditor.setContent('coucou');
我想使用 vue js 模板中的按钮在 tinymce 编辑器中插入 <span class="some-class">text</span>
之类的内容。我怎样才能使用 tinymce-vue 包装器完成它?
这是代码:
<template>
<tinymce-editor
api-key="my-api-key-here"
/>
<button @click="addContent">button</button>
</template>
import Editor from '@tinymce/tinymce-vue'
export default {
components: {
tinymceEditor: Editor
},
methods: {
addContent () {
tinymce.activeEditor.setContent('<span class="some-class">text</span>');
}
}
}
编辑:
我还使用 npm i tinymce --save
安装了 tinymce
并将导入 import tinymce from 'tinymce/tinymce
添加到上面的代码中。现在我不再收到错误 'tinymce' is not defined
,但编辑器也没有出现。
如果您想将内容插入 TinyMCE,您应该使用它的 API 来这样做:
https://www.tiny.cloud/docs/api/tinymce/tinymce.editor/#setcontent https://www.tiny.cloud/docs/api/tinymce/tinymce.editor/#insertcontent
例如:
tinymce.activeEditor.setContent('<span class="some-class">text</span>');
tinymce.activeEditor.insertContent('<span class="some-class">text</span>');
在您的按钮点击事件处理程序中,您可以调用 TinyMCE 的 .setContent()
方法来设置编辑器内容。
这是一个演示: https://codesandbox.io/s/set-content-in-tinymce-in-vue-jzciu
别忘了,tinymce-vue
不包含 TinyMCE 本身的代码。您要么必须使用 API 密钥(您可以在 tiny.cloud) or use a self-hosted installation of TinyMCE. (For more info, see Step 6, here: https://www.tiny.cloud/docs/integrations/vue/#procedure 免费获得)
如果您想在带有 typscritt 的 vue 中使用 tinymce 来设置您的内容并避免未定义的错误,您需要将 tinyMCE 导入为
import { getTinymce } from '@tinymce/tinymce-vue/lib/cjs/main/ts/TinyMCE';
然后你可以设置你的内容
getTinymce().activeEditor.setContent('coucou');