gpt4 book ai didi

typescript bool 函数必须返回一个值

转载 作者:搜寻专家 更新时间:2023-10-30 20:59:58 24 4
gpt4 key购买 nike

我有以下 Typescript bool 函数:

checkRiskValues(): boolean {
this.controlsName.forEach((item) => {
this.threatForm.get(item)!.valueChanges.subscribe(value => {
this.valueControlArray.push(this.threatForm.get(item)!.value);

if (this.valueControlArray.indexOf(true) > -1)
return true;

else
return false
});
});
}

方法出现错误函数必须返回值。我知道,但我不确定如何在 foreach 范围外实现这个 true/false 语句?

如果我在 foreach 循环外调用 if/else statament,结果总是 false,因为

if (this.valueControlArray.indexOf(true) > -1)

是空的..

编辑

我已经删除了 checkRiskValues() 函数并在 ngOnInit() 方法中添加了完整的逻辑,我还添加了 valueControl 变量来保持 true/false 值并传入另一个函数。谢谢大家..这是我的解决方案:

ngOnInit() {
this.controlsName.forEach((item) => {
this.threatForm.get(item)!.valueChanges.subscribe(value => {
this.valueControlArray.push(this.threatForm.get(item)!.value);

if (this.valueControlArray.indexOf(true) > -1) {
this.valueControl = true;

}
else {
this.valueControl = false;
}
});
});
}

最佳答案

这是我的建议:

checkRiskValues(): boolean {
return setRiskValues().indexOf(true) > -1;
}

setRiskValues(): Array<any> {
let values = [];
this.controlsName.forEach((item) => {
this.threatForm.get(item)!.valueChanges.subscribe(value => {
values.push(this.threatForm.get(item)!.value);
});
});

return values;
}

你是这样的:

  1. 建立你的阵列
  2. 检查是否存在正值(如果存在则返回索引)

关于 typescript bool 函数必须返回一个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48530072/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com