方法一:使用render函數
這種方式有個缺點就是可讀性差,而且render函數綁定的事件回調的函數不能直接調用元件中的方法和屬性,也就是說render函數中的方法無法操作exportdefault中的屬性和方法,除非屬性是表格中的屬性,因為表格的屬性通過參數的形式傳給了render。
data() {
return {
sharepop: false,
columnsoftable: [
{
type: '操作',
width: 60,
align: 'center',
render:(h, params)=>{
return h('a', {
on: {
click: () => {
//提示undefined,通路不到元件内部,
//render函數傳回的是原生的dom隻能通路元件外部的方法和屬性
alert(this.sharepop);
this.sharepop = true;//無效
}
}
}, '協作')
}
},
解決render函數通路不了元件内部屬性和方法:https://blog.csdn.net/weixin_34309435/article/details/88208233
方式二:iview官方的api提供有slot-scope的寫法,但是不仔細看每一種表格不容易注意到,這也導緻了我走了很多彎路。
這種方式可以直接在表格中寫iview或html的标簽而不需要通過render函數,這樣也可以通路元件内部的屬性和方法,可讀性也比較好。