【vue】 方便好用的render组件

2020-11-09  本文已影响0人  前端菜篮子
//某些组件的slot中调用该组件,可以通过render函数重新渲染
export default {
    name: 'VeRender',
    props:{
        render: Function,
        params: Object
    },
    render: function (h) {
        return this.render(h, this.params)
    }
}

/**
 * 使用案例: attr: { render(h, {row, column, $index}){} }
 * <el-table-column       
        v-bind="attr">
        <template 
            slot-scope="{row, column, $index}">
            <ve-render 
                v-if="attr.render" 
                :params="{row, column, $index}" 
                :render="attr.render"> 
            </ve-render>
            <!-- formatter -->
            <span v-else-if="attr.formatter">{{ attr.formatter(row, column, $index) }}</span> 
            <!-- 原默认值 -->
            <span v-else>{{ row[attr.prop] }}</span>
        </template>
    </el-table-column>      
 */
上一篇下一篇

猜你喜欢

热点阅读