gpt4 book ai didi

reactjs - redux-thunk:通过 store.dispatch() 调用操作时缺少属性 'type'

转载 作者:行者123 更新时间:2023-12-03 13:17:04 25 4
gpt4 key购买 nike

我在网上发现了类似的问题,但通过 store.dispatch() 调用 redux-thunk Action 时没有解决方案。

我有以下操作:

export class DBActions {
static startDatabase(): ThunkAction<Promise<void>, {}, IClientState, AnyAction> {
return async (dispatch: ThunkDispatch<{}, {}, AnyAction>, getState: () => IClientState): Promise<void> => {
return new Promise<void>((resolve) => {
dispatch(DBActions.connectDatabase())
setTimeout(() => {
let connection: (Connection | undefined) = getDBConnection(getState())
if (connection) {
dispatch(DBActions.getImports(connection))
resolve()
}
}, 2000)
})
}
}
}

当通过 mapDispatchToProps 添加到组件中时,这可以正常工作,但在定义 store 后直接在我的 store.ts 中调用时则不会出现问题。 store.dispatch(DBActions.startDatabase()) 导致:

TS2345: Argument of type 'ThunkAction<Promise<void>, {}, {}, AnyAction>' is not assignable to parameter of type 'AnyAction'.
Property 'type' is missing in type 'ThunkAction<Promise<void>, {}, {}, AnyAction>'.

感谢任何帮助和建议!

最佳答案

避免错误消息的简单解决方法 - 尽管它不是解决方案:

dispatch<any>(DBActions.getImports(connection))

关于reactjs - redux-thunk:通过 store.dispatch() 调用操作时缺少属性 'type',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54371096/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com