使用render函数渲染html

btnData: [
    {
        key: '1',
        content:'停止',
    },
    {
        key: '2',
        content: '重新执行',
    }
],
operation(trData){
    const parent = this;
    return new Vue({
        render(h) {
            const btnComp = h('WbButton', {
                props: {
                    type: 'primary'
                }
            }, '操作';
            return h('Dropdown', {
                props: {
                    data: parent.btnData,
                    trigger: 'click'
                },
                on: {
                    'on-choose': ({key}) => {
                        if (key == '1'){
                            parent.tableStop(trData);
                        } else{
                            parent.$refs.reexecutionModal.show()
                            parent.reexecutionSubmit([trData],'one');
                        }
                    }
                }
            }, [btnComp])
        }
    }) 
},

render添加title属性

componentEllipsis(trData, tdData) {
    return new Vue({
        render(h) {
            let child = [];
            console.log('tdData:',tdData)
            child.push(
                h('div', {
                    class: `text-ellipsis`,//样式加省略号
                    style: 'width: 150px',
                    attrs:{
                        title:tdData,//title显示内容
                    },
                }, tdData)
            );
            return h('div',child)
        }
    })
},

 

Logo

前往低代码交流专区

更多推荐