我正在建立一個應用程序的反應,在其中一個鍋爐板項目中找到一條線。什麼是(狀態= {})=>狀態表示
(state = {}) => state
任何人都可以向我解釋上面的行是什麼意思? 這是javascript ES6標準。
我正在建立一個應用程序的反應,在其中一個鍋爐板項目中找到一條線。什麼是(狀態= {})=>狀態表示
(state = {}) => state
任何人都可以向我解釋上面的行是什麼意思? 這是javascript ES6標準。
它是一個返回其輸入的(n箭頭)函數。如果輸入未定義,它將成爲默認值{}。
您可能已經將它與使用redux'「connect」結合起來看作是將商店狀態映射到用於連接組件的投影的函數。如果沒有可用狀態,則會提供空對象。
這是一個arrow function,其中default parameter返回其輸入或一個空對象,如果沒有提供輸入。它類似於此ES-5功能:
function(){
var state = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0];
return state;
}
你可能會更熟悉這種表示:
function(state) {
if (!state) state = {}; // state defaults to {}
return state;
}
你看到的是ES6語法糖:function(state = {}) { ... }
是默認值的速記符號( state
默認爲{}
),(a) => b
是function(a) { return b }
的簡寫符號。如果你把它們放在一起,你會得到(state = {}) => state
。
可能的重複[在JavaScript中對「=>」(等於和大於等於一個箭頭)的含義是什麼意思?](http://stackoverflow.com/q/24900875/1048572) – Bergi
真的不知道這是怎麼回事問題有很多回應 – naomik