我正在使用Angular 5.
在我的组件中,我检查值是否等于" DATE"。
isDateColumn(columnName: string){
this.configData.some((el) => {
if (columnName == el.key.columnName){
console.log("FOUND: " + el.dataType + " For " + columnName);
return el.dataType === "DATE";
}
})
return false;
}
在我的控制台中,我找到了类似下面的内容:
FOUND: DATE For CLIENT_START_DT
但是这个函数仍然返回false
。
为什么会这样?
答案 0 :(得分:2)
这是因为你的return语句return el.dataType === "DATE";
从array.some函数而不是isDateColumn函数返回。所以最后return false;
执行所有情况。
这有效:
isDateColumn(columnName: string){
let found = false;
this.configData.some((el) => {
if (columnName == el.key.columnName && el.dataType === "DATE"){
console.log("FOUND: " + el.dataType + " For " + columnName);
found = true;
}
})
return found;
}