1、 iview中的render函数由于从别的组件中引入,所以this指向不正确问题解决方法
https://blog.youkuaiyun.com/weixin_34259559/article/details/88317407
1.1、首先在最外部创建一个window对象
window.selfs = {};
1.2、在vue初始化参数上给他赋值
created:function () {
selfs = this;
},
1.3、然后使用在render函数中
{title: '开关状态', key: 'kgzt',
render: function (h, params) {
return h('i-switch',{
props: {
size: 'large',
value: params.row.kgzt=='1'?true:false
},
on: {
'on-change': function (flag) {
var id = params.row.id;
window.selfs.changeKgzt(flag,id);
}
}
},
[h('span',{slot: "open",domProps:{innerHTML:'启用'}}),
h('span',{slot: "close",domProps:{innerHTML:'禁用'}})
]
);
}
},
2、vue $refs的基本用法
<div id="app">
<input type="text" ref="input1"/>
<button @click="add">添加</button>
</div>
<script>
new Vue({
el: "#app",
methods:{
add:function(){
this.$refs.input1.value ="22"; //this.$refs.input1 减少获取dom节点的消耗
}
}
})
</script>
一般来讲,获取DOM元素,需document.querySelector(".input1")获取这个dom节点,然后在获取input1的值。
但是用ref绑定之后,我们就不需要在获取dom节点了,直接在上面的input上绑定input1,然后$refs里面调用就行。
然后在javascript里面这样调用:this.$refs.input1 这样就可以减少获取dom节点的消耗了
在iview的Table中添加Select(render)
https://blog.youkuaiyun.com/dead_rabbit6_0/article/details/79239206