2017-02-23 53 views
1

我使用的是flux,我發現下面的代碼並不優雅。我不能在這裏跳過const嗎?有什麼辦法讓它成爲一條線嗎?跳過賦值爲const

static getPropsFromStores(props) { 
    const { items } = CrudStore.getState(); 
    return { items }; 
} 
+0

你真的需要再細化項目的財產? –

回答

5

既有線:

const { items } = CrudStore.getState(); 

...是一個destructuring assignment相當於這樣做:

const items = CrudStore.getState().items; 

鑑於此行:

return { items }; 

...使用相當於這個速記object literal

return { items: items }; 

也就是說,它會創建並返回一個新的對象有一個名爲items設置到任何現有的items變量的值屬性是。

因此,沒有創建const將在格式{items: items}返回一個對象的單行道:

static getPropsFromStores(props) { 
    return { items: CrudStore.getState().items }; 
} 
+0

如果我有這個'const {items,items_total,items_length} = CrudStore.getState();如果我有這個一行代碼還有意義嗎? –

+1

可能不是。我的意思是,你可能不想說'return {items:CrudStore.getState()。items,items_total:CrudStore.getState()。items_total,items_length:CrudStore.getState()。items_length};'。你現有的*代碼中相應的return語句會是什麼? – nnnnnn

0

寫這樣的:

+0

爲什麼||需要null嗎? –