[英]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.