vue createVNode 怎么双向绑定 或者回调数据

背景

目前使用antdesign做UI框架,想要用纯粹的JS实现一个简单的组件

代码

export function promptSelect (options: {
    title: string,
    placeholder: string,
    beforeText?: string,
    options: {label: string, value: string | number}[]
}): Promise<string | number> {
    let value = '' as string | number
    const select = createVNode(Select, {
        placeholder: options.placeholder,
        options: options.options,
        change: (nvalue: string | number) => {
            // 这里应该怎么写才能让数据获取到
        }
    })
    const nodes = [
        select
    ]
    if (options.beforeText) {
        nodes.unshift(createVNode('text', {
            class: 'red'
        }, '*'),
        createVNode('text', {}, '分组名称 :'))
    }
    return new Promise((resolve, reject) => {
        const node = createVNode('div', {
            class: 'prompt-box'
        }, nodes)
        Modal.confirm({
            title: options.title,
            content: node,
            width: '460px',
            onOk: () => {
                resolve(value)
            },
            onCancel: () => {
                reject(new Error())
            }
        })
    })
}

问题

怎么能让回调方法能调用到当前js文件的方法,或者如何实现双向绑定

讨论数量: 1

好像是 onChange

1年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!