我正在建立一个应用程序的反应,在其中一个锅炉板项目中找到一条线。什么是(状态= {})=>状态表示
(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