[英]how to fix the error Type 'void' is not assignable to type 'boolean' in angular?
[英]Angular TypeScript error: Type 'void' is not assignable to type 'boolean'
以下代碼有什么問題。 它抱怨不能將const invalidResult的void分配給boolean。
isSubmitDisabled(): boolean {
const results: Result[] = this.getLFResults();
const invalidResult: boolean = results.forEach(function(result) {
if (result.indicators.length === 0) {
return true;
}
return false;
});
return results.length === 0 || invalidResult;
// return results.length === 0;
}
getLFResults(): Result[] {
if (!this.logframe) {
const results: Result[] = [];
this.store.select(getCurrentLogFrameState)
.map((logframe) => {
this.logframe = logframe;
})
.catch((err) => {
return results;
});
if (this.logframe !== null && this.logframe !== undefined) {
return this.logframe.results;
} else {
return results;
}
}
}
forEach(callbackfn: (this: void, value: T, index: number, array: T[]) => void): void;
您可能想使用返回布爾值的every方法 :
results.every(function (result) {
if (result.indicators.length === 0) {
return true;
}
return false;
});
或一些方法 :
results.some(function (result) {
if (result.indicators.length === 0) {
return true;
}
return false;
});
因為Array.forEach
不返回任何內容。 您可能正在尋找Array.some
,如果任何一項滿足配置條件,它將返回一個boolean
:
const invalidResult: boolean = results.some(function (result) {
return result.indicators.length === 0;
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.