[英]Typescript type boolean is not assignable to void
myContact = [
{
name: 'John',
lastName: 'Doe',
phone: 123456789
},
{
name: 'Mark',
lastName: 'Doe',
phone: 98765432
}
]
在点击事件上,添加一个条件来检查数组长度,如果长度 > 2。
onClick() {
if(myContact.length > 2)
redirect page...
return false; // don't want the code to continue executing
}
错误:Typescript 类型 boolean 不可分配给 void
我尝试使用 some() 进行类似的操作,以下我的条件按要求工作
let checkValue = myContact.some(s => s.name === 'John')
if(checkValue)return false
但如果我尝试与我的联系人类似,EG
let checkLength = myContact.filter(obj => obj.name).length
if(checkValue)return false // error: error: Typescript type boolean is not assignable to void
我该如何解决这个问题,
void
类型意味着 function 做了一些事情但不返回值。 这意味着具有void
类型的 function 也不能返回boolean
。 由于 TypeScript 预计它不会返回任何内容。
您很可能有一个 function 声明如下:
const functionName = (): void => {
...
}
除此之外,这似乎不是这里问题的核心。 如果您希望您的 function “提前返回”并停止执行其逻辑的 rest。 你可以明确地告诉它不返回这样的东西:
const functionName = (): void => {
if (someCondition) {
return;
}
// This code won't run if `someCondition` is true.
someOtherLogic()
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.