async changeSelectPosition (item: any) { console.log(this.formEntity.DrillOrgIDarr, 'this.formEntity.DrillOrgIDarr') if(this.formEntity.ExamType==0){ this.checktypetask(this.formEntity.ExamType, this.formEntity.DrillOrgIDarr, item.value[0].ID) }else{ this.checktypetask(this.formEntity.ExamType, this.formEntity.ByCheckOrgIDs, item.value[0].ID) } this.formEntity.PostName = item.value[0].text this.formEntity.PostId = item.value[0].ID this.showPosition = false },他还是会继续执行接下来的代码
时间: 2024-02-14 14:17:58 浏览: 133
如果你想要在 checktypetask 函数返回 false 的情况下阻止 changeSelectPosition 函数接下来的代码执行,可以在 checktypetask 函数返回 false 的时候,直接在该函数中抛出一个异常。修改后的代码如下:
```
async changeSelectPosition(item: any) {
console.log(this.formEntity.DrillOrgIDarr, 'this.formEntity.DrillOrgIDarr')
try {
if (this.formEntity.ExamType == 0) {
this.checktypetask(this.formEntity.ExamType, this.formEntity.DrillOrgIDarr, item.value[0].ID)
} else {
this.checktypetask(this.formEntity.ExamType, this.formEntity.ByCheckOrgIDs, item.value[0].ID)
}
this.formEntity.PostName = item.value[0].text
this.formEntity.PostId = item.value[0].ID
this.showPosition = false
} catch (error) {
console.log(error)
}
},
```
在 checktypetask 函数中,如果检查不通过,就抛出一个异常:
```
if (!res.Result) {
let passvalue: any[] = [];
(res.ReturnObject as any)?.map((item: any) => {
passvalue.push(item)
})
uni.showToast({
title: `${passvalue.join(',')}机构对应岗位下没有人员`,
icon: 'none',
})
throw new Error('机构对应岗位下没有人员')
} else {
console.log(this.formEntity.ByCheckOrgIDs, 'ss')
return true
}
```
这样,当 checktypetask 函数返回 false 的时候,就会抛出一个异常,从而阻止 changeSelectPosition 函数接下来的代码执行。
阅读全文