我所看到的所有示例函数实际上在withHandlers
中调用的函数似乎都调用了函数props
,但我不知道该函数是如何定义的。这是docs for humans的一个小例子。为React定义withHandler函数
compose(
withState('count', 'setCount', 0),
withHandlers({
incrementCount: props => event => {
event.preventDefault()
props.setCount(props.count + 1)
}
})
)(ComponentToEnhance)
我的理解是,这将创建一个“状态”一HOC跟踪count
。我将能够通过使用定义的处理程序的操作来增加计数(例如onClick={incrementCount}
)。
我的问题是那么,哪里是setCount
实际上定义..我成像像
function setCount(i) {
return i+1;
}
由于它是从所谓的道具,使用组件当你做,你必须在把它作为道具?我很困惑,为什么withState
需要知道状态更新者的名字,或者如果是这样的话,甚至是相关的。
是否只定义为您自动功能,它将取代与任何参数传递给它的状态参数(捂脸如果是这样..)
感谢您的回答。值得注意的是,我在问题('setCount')中提到的“函数”是由'withState'为创建的var创建的setter。 –