2017-08-28 52 views
0

我想過濾一個數組的反應。這裏是我的代碼:反應過濾器eslint錯誤:意外的塊語句周圍的箭頭主體

resultArray = myArray.filter((item) => { 
    return item.children.length === 0; 
}); 

這給了我一個eslint錯誤: Unexpected block statement surrounding arrow body

所以我換了大括號括號:

resultArray = myArray.filter((item) => (
    return item.children.length === 0; 
)); 

這給了我一個意外的標記錯誤而突出return

什麼是正確的方法來做到這一點?

回答

1

是作爲@DanielSchneider已經說:

你可以使用速記(或者也稱爲拉姆達)箭頭的功能如下:

resultArray = myArray.filter(
    item => item.children.length === 0 //this is the lambda function 
); 

因爲它是單個表達式和返回值(即使返回值未定義),您可以使用短手箭頭功能。它將始終返回表達式的結果(甚至未定義)。

+0

接受這一個作爲答案,因爲其他人仍然給我一個Eslint錯誤。可能是因爲我的皮毛配置。 –

2

因爲是一個表達式,你可以做到以下幾點:

resultArray = myArray.filter((item) => item.children.length === 0); 
相關問題