我是redux的新手,并尝试将其与Typescript一起使用。
我在组件中的mapDispatchProps
中使用了connect()
,在导入该组件时,它需要将动作传递为道具,而不应该将其作为道具。
奇怪的是,当我尝试其他操作时,这看起来还不错,但是这样做有问题。
完整的代码是
here
以及我要导入组件的index.tsx
中的错误消息。
错误消息
类型“ {}”中缺少属性“ getInputUserName”,但类型“ Readonly>”中必需。ts(2741) App.tsx(8,3):此处声明为“ getInputUserName”。
很高兴听到任何建议。 预先感谢!
答案 0 :(得分:1)
您应该传递与Props
界面中声明的名称相同的名称的操作。
所以要么试试这个-
export default connect(
mapStateToProps,
{ getInputUserName: loginUserName }
)(App)
或这个-
interface Props {
inputUserName: string;
loginUserName: typeof loginUserName;
}
答案 1 :(得分:0)
您可以尝试一下吗
export default connect(
mapStateToProps,
{ getInputUserName: loginUserName }
)(App);
干杯