我正在尝试使用 useDispatch 将多个参数传递给 RTK 减速器。通常,我会将参数包装在对象或数组中,并在化简器中进行解构。但除了使用我著名的作弊代码“any”之外,我在使用 Typescript 时遇到了困难。我觉得这是一个非常无知的问题,并展示了我对 Typescript 的陌生,但希望得到任何帮助!
类型:
在我的地图组件中调度:
dispatch(updateMarkerCoords([marker.id, e.nativeEvent.coordinate]))
Run Code Online (Sandbox Code Playgroud)
RTK 切片:
updateMarkerCoords: (state, action: PayloadAction<Array<any>>) => {
const [id, coords] = action.payload
const marker = state.addNewField.markers.find((m) => m.id === id)
if (marker) {
marker.coords = coords
}
},
Run Code Online (Sandbox Code Playgroud)