我有一个组件构建在Select
来自Ant Design
https://ant.design/components/select/的组件上
<SomeComponent
onSelect = { this.props.handleSelect }
onDeselect = { this.props.handleDeselect }
selectionList = { valuesList }
value = { values }/>
onSelect
触发动作this.props.handleSelect
export function handleSelect(value) {
return dispatch => {
dispatch(actionCreator(HANDLE_SELECT, value));
}
}
该行动进入reducer
case HANDLE_SELECT: {
const newValues = value_select(state, action);
return {
...state,
find: {
...state.a,
values: newValues
}
}
}
最后,value_select
被称为做所有的魔法
export const value_select = function(state, action) {
...
const newData = {
XYZ: action.payload
}
return newData
}
这让我想到了我的问题。是否可以进一步metadata
发送action
?<SomeComponent.../>
想象一下,我多次使用该组件。我不知道在触发action
时触发了哪些渲染组件onSelect
。如果我想value_select = function(state, action) {...
稍后处理信息,我想知道是什么component
导致了action
正确处理我的数据。我需要动态设置XYZ
,value_select()
具体取决于<SomeComponent.../>
导致action
. action.payload
只给我保存在value
的<SomeComponent.../>
东西,仅此而已。有没有一种方法可以发送更多信息,onSelect
或者这是一种不好的做法,无论如何我都需要一个action
for each component <SomeComponent.../>
?