无法将调度连接到道具

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了无法将调度连接到道具相关的知识,希望对你有一定的参考价值。

我有一个要连接到商店以便提取数据的类组件。

我已经使用功能组件测试了该动作,并且效果很好。由于某些限制,我决定使用类组件。

问题是,尽管我确实通过connect函数连接了调度程序,但'getTableDataAction'并不存在。

因此,我将得到以下错误:“ TypeError:this.props.getTableDataAction不是函数

 export default class TchExportButton extends Component {

constructor(props) {
    super(props);
    this.state = {
        selectedIndex: 0,
        anchorEl: null,
        options: ['Select drill down report',
            'Destroyed DCA',
            'Repaired - A008']
    }
}

componentDidUpdate(prevState) {
    if (this.state.selectedIndex !== prevState.selectedIndex) {
        if (this.state.selectedIndex > 0) {
            this.props.getTableDataAction(this.state.selectedIndex)
        }
    }
}
.....
...
..

const mapStateToProps = (state) => {
return {
    data: state.tchCommecialTableData.data,
    }
 }


const mapDispatchToProps = (dispatch) => {
     return {
    getTableDataAction: (buttonId) => dispatch(engineeringDataAction.getTableDataAction(buttonId))
   }
}

 connect(mapStateToProps, mapDispatchToProps)

我不确定我在做什么错,但是那里缺少某些东西,我找不到根本原因。

任何主意哪里出了问题?

谢谢

答案

您的默认导出应该是连接的组件,而不是未连接的组件。

另一答案

定义类并导出connect(class):

以上是关于无法将调度连接到道具的主要内容,如果未能解决你的问题,请参考以下文章

如果从组件连接到单独的文件中,则不传递道具?

无法将 Visual Studio 代码连接到 PHP

Xcode 13 AppleScript 框架无法将 UI 连接到 Applescript 代码

无法将我的手机连接到 Android Studio 或 VS 代码

无法连接到 APNS:返回代码 20(无法获取本地颁发者证书)

无法将本机反应连接到本地主机