js的forEach循环中return后还执行方法后面的代码
js的forEach循环中return后还执行方法后面的代码
解决方法:
1.错误代码,return false后还还执行$(this.$refs.cuteModal).modal('hide');
this.cutes.forEach(function(item){
if (!item.cited_qid || !item.cited_type||!item.cited_var) {
showWarnTips('选项不能为空');
return false;
}
});
$(this.$refs.cuteModal).modal('hide');
2.改进后正确代码,加flag标识,因为在js循环中的return只是跳出循环体
var flag=true;
this.cutes.forEach(function(item){
if (!item.cited_qid || !item.cited_type||!item.cited_var) {
flag=false;
showWarnTips('选项不能为空');
return false;
}
});
if(flag){
$(this.$refs.cuteModal).modal('hide');
}