在对数据进行循环处理处理时,需要对遇到不符合要求的数据对循环进行中断处理,这就需要使用到try catch来实现我们的要求了。
使用try catch实现
try {
var num = 0
// 用户类型
var list = [1, 2, 3, 4]
list.forEach(function(item, index) {
if (that.listtype.indexOf(item) != -1) {
that.changeStorage(item)
num = item
uni.redirectTo({
url: that.pageList[item]
})
throw new Error("中断循环");
}
});
if (num == 0) {
uni.redirectTo({
url: that.listtype[0]
})
}
} catch (e) {
console.log(e)
};
uniapp 循环实例
需求:uniapp项目开发是,表单数据处理,在进行for循环的时候,我们需要判断数据是否符合要求,如果不符合要求则中断循环并报错,方法不在往下走。
实例代码
try {
var interrupt = false
if (that.data.Category == 'Ship') {
if (that.data.Details) {
that.data.Details.forEach((type) => {
var datax = {
Id: type.Id,
NumberPlate: type.NumberPlate,
PlannedWeight: type.PlannedWeight
}
if (type.PlannedWeight == '') {
throw new Error("请输入单车计划装车重量");
}
Details.push(datax)
});
}
} else {
if (that.data.Details) {
that.data.Details.forEach((type) => {
var datax = {
Id: type.Id,
NumberPlate: type.NumberPlate,
PlannedUnloadingWeight: type.PlannedUnloadingWeight,
}
if (type.PlannedUnloadingWeight == '') {
throw new Error("请输入单车计划卸载重量");
}
Details.push(datax)
});
}
}
} catch (e) {
interrupt = true
uni.showToast({
title: e.message,
icon: 'none'
})
};
if (interrupt) {
return
}