解决1:我的解决方法是外边包了一层span标签。将点击事件加到span标签上。
解决2::原生事件要加修饰符。<Icon @click.native="handleClickFunction">
1、取出两个数组的不同元素
getArrDifference(arr1, arr2) {
return arr1.concat(arr2).filter(function(v, i, arr) {
return arr.indexOf(v) === arr.lastIndexOf(v);
});
},
2、取出两个数组的相同元素
getArrEqual(arr1, arr2) {
let newArr = [];
for (let i = 0; i < arr2.length; i++) {
for (let j = 0; j < arr1.length; j++) {
if(arr1[j] === arr2[i]){
newArr.push(arr1[j]);
}
}
}
return newArr;
},
三:
用for循环或者forEach遍历数组的话,在方法体内部splice都得不到正确的结果,解决方法是使用逆向循环
方法一,用 filter
var arr = [2, 3, 5, 7];
arr = arr.filter(item => item !== 5);
方法二,用逆向循环
var arr = [2, 3, 5, 7];
for (let i = arr.length - 1; i >= 0; i--) {
if (arr[i] === 5) {
arr.splice(i, 1);
}
}
四:
在vue-router
中,有两大对象被挂载到了实例this
; $route(只读、具备信息的对象)
; $router(具备功能的函数)
查询字符串:
1.去哪里 ?
<router-link :to="{name:'detail',query:{id:1}}"> xxx </router-link>
2.导航(查询字符串path不用改)
{name:'detail',path:'/detail',组件}
3.去了干嘛?获取路由参数(要注意是 query ,还是 params 和 对应的 id 名? 是后者需要注意设置相关文件的id规则)
+ this.$route.query.id
path方式:
1.去哪里 ?
<router-link :to="{name:'detail',params:{name:1}}"> xxx </router-link>
2.导航(查询字符串path不用改)
{name:'detail',path:'/detail/:name',组件}
3.去了干嘛?获取路由参数(要注意是 query ,还是 params 和 对应的 name 名? 是后者需要注意设置相关文件的id规则)
+ this.$route.params.id
es6取出数组中最大的数字:
Math.max(...arr)