我正在建立一个应用程序,我在其中一个锅炉板项目中找到了一条线。
(state = {}) => state
任何人都可以向我解释上述内容的含义吗? 这是 javascript ES6标准。
答案 0 :(得分:7)
它是一个(n箭头)函数,返回其输入。如果未定义输入,则它将成为默认值{}。
您可能已经将它与使用redux'“connect”结合使用,作为将商店状态映射到用于连接组件的投影的函数。如果没有可用的状态,则将提供空对象。
答案 1 :(得分:7)
如果没有提供输入,那是arrow function,default parameter返回其输入或空对象。它与es-5函数类似:
function(){
var state = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0];
return state;
}
答案 2 :(得分:3)
您可能更熟悉这种表示法:
function(state) {
if (!state) state = {}; // state defaults to {}
return state;
}
你看到的是ES6语法糖:function(state = {}) { ... }
是默认值的简写符号(state
默认为{}
),而(a) => b
是function(a) { return b }
的简写符号{1}}。如果将它们组合在一起,则会得到(state = {}) => state
。