我是JavaScript新手,我正在使用以下tutorial学习React。
它还教导使用Alt作为状态管理库,我的问题与$current = URL::action(Route::currentRouteName(), ['arg' => 'value']); // Returns the current url and assign arguments to it
方法语法有关。我没有详细解释这个问题,因为我认为我的问题只与理解语法有关。
我知道这里connect将逗号分隔的参数作为道具传递给组件App。但是我不明白第一个参数。
我遇到的箭头函数connect
后{}
使用=>
,() => {}
,参数将在()
中,函数体将在{ {1}}
我对{}
的理解是,这是一个函数,它接受一个名为lanes的对象数组并返回相同的数组。代码片段如下:
({lanes}) => ({lanes})
我的问题是:
export default connect(({lanes}) => ({lanes}), {
LaneActions
})(App)
中的通道,指定它是一个数组?如果不是,它代表什么? {}
或connect(lanes,LaneActions)(App)
connect({lanes},LaneActions)(App)
的车道是否有所作为,它是什么? 答案 0 :(得分:3)
connect
期望回调作为第一个参数,并且如果你传递了非函数则会中断。另外,请注意,这不是简单的直通;它会在返回之前从第一个参数中删除除lanes
之外的所有键。 5& 6:这些有点宽泛。如果您想了解所有相关信息,我建议您提出新问题或查看MDN's page on arrow functions。要回答这个特定情况:需要参数()
,因为参数比单个标识符更复杂,参数中的{}
用于解构,()
在body用于区分对象文字和仅由单个语句lanes
组成的块,并且正文中的{}
创建对象文字。
如果您想知道箭头函数究竟是什么(稍微密集编码),顺便说一句,它与下面的内容大致相同(给出或采取一些当前无关的箭头函数的怪癖) :
function(obj) {
return { lanes: obj.lanes };
}