一、Vue.set和this.$set的区别
受 ES5 的限制,Vue.js 不能检测到对象属性的添加或删除。因为 Vue.js 在初始化实例时将属性转为 getter/setter,所以属性必须在 data 对象上才能让 Vue.js 转换它,才能让它是响应的。
正确写法:this.$set(this.data,”key”,value’)
var vm=new Vue({
el:'#test',
data:{
//data中已经存在info根属性
info:{
name:'小明';
}
}
});
//给info添加一个性别属性
Vue.set(vm.info,'sex','男');
Vue.set是将set绑定在vue的构造函数上,而this.$set是直接挂载在vue的原型上。
二、$on和$emit事件
$emit是触发事件 $on是监听事件
// 监听slotValueChange事件
created() {
this.$on('slotValueChange', this.slotValueChange);
},
slotValueChange() {
this.$emit('change', this.values, this);
},
三、$('body').off().on()
// 点击事件委托,向下冒泡,匹配到button的类则触发
$('body').on('click', '.button', (e) => {})
// 避免多个事件触发,可以在点击事件之前先移除当前button的所有事件,on和off的参数需要保持一致
$('body').off('click', '.button')
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。