猿问

react-redux connect装饰器导致的ts props声明出现问题?感激不尽

interfaceiCustomProps{/*...*/}
functionmapStateToProps(state:StoreState):iCustomProps{/*...*/}
@connect(mapStateToProps,mapDispatchToProps)
exportdefaultclassTestCompoextendsReact.Component{/*...*/}//[1]
[1]:如果这儿不标识props的类型的话,以后使用this.props总会显示红波浪线,搞得每个用到的地方都需要手动标识props类型,很烦;可是如果这里标识props类型的话,又会导致引用该组件时会提示你还有属性没加上去,很烦。。。
//栗子1
@connect(mapStateToProps,mapDispatchToProps)
exportdefaultclassTestCompoextendsReact.Component{
func(){
//warning:编译器认为没有这个属性
const{this.customProp}=this.props
//必须这么写
//const{this.customProp}=this.propsasiCustomProps
}
}
//栗子2
@connect(mapStateToProps,mapDispatchToProps)
exportdefaultclassTestCompoextendsReact.Component{/*...*/}
//warning:编译器认为你没有写全iCustomProps列出来的属性
//可问题时那些属性是redux映射出来的啊,编译器认不出来吗?
//还是说是我的编辑器有问题?
BIG阳
浏览 1516回答 2
2回答

杨__羊羊

这个是官方自己好几年都没解决的问题:点击这里查看只能这样写了exportdefaultconnect(mapStateToProps,mapDispatchToProps)(TestCompo);
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答