我想在用户提交的时候校验用户输入的数据是否正确
综上 我的验证没有生效 该怎么改啊
forEach换成every
return this.sendMsgList.every(item => {
if(!item.sendTime){
this.message.xxx
return false
}
return true
})
forEach函数中return不会生效。可以用一个布尔值来判断,然后再返回布尔值
我之前写过一篇博客: https://tiven.cn/p/6195dbbd/ 有详细介绍怎么终止跳出循环。
其中有说明,forEach 和 map 不能终止循环,你这里把 forEach 循环 改成 for 循环,需要终止的时候 return false。
return 用于返回函数的返回值,因此 return 语句只能出现在函数体内,否则会报错:Uncaught SyntaxError: Illegal return statement 。
使用特点:
你这个 永远都是 true 。类似这样
function s() {
return arr.every((item) => {
if(item.id==1){
return false
}
});
}
这几个地方需要返回一个false,不然没有返回值啊