传递数据给TipTap中的自定义Vue扩展的方法
P粉957723124
P粉957723124 2023-12-26 13:03:48
[Vue.js讨论组]

我正在尝试将数据传递到在 tiptap 编辑器 内呈现的自定义 vue 组件。我可以传递 default 属性,但为其分配反应值似乎不起作用。

这是 tiptap-node-extension.js 文件:

import {Node, mergeAttributes} from '@tiptap/core'
import {VueNodeViewRenderer} from '@tiptap/vue-3'
import Component from '@/views/components/vue-component.vue'

export default Node.create({
    parseHTML() {
        return [{ tag: 'vue-component' }]
    },
    renderHTML({ HTMLAttributes }) {
        return ['vue-component', mergeAttributes(HTMLAttributes)]
    },
    addNodeView() {
        return VueNodeViewRenderer(Component)
    },
})

editor 组件的 script setup 部分:

vue 组件




srcdefault 可以通过,但是当我尝试分配一个响应对象(在安装 editor 组件后创建的)时,它最终会变成 undefined

这有效:

src: {
    default: '123'
}

但这不是:

...

src: {
    default: state.src
}

...

const sendDataToExtension = async (editor, event) => {
    // triggered upon event

    ...

    state.src = '123'
    editor.chain().focus().insertContent('').run()

}

如何向挂载editor后创建的vue组件发送数据?

尝试:

editor.chain().focus().insertContent('', {src: state.src}).run()

P粉957723124
P粉957723124

全部回复(0)
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号