gpt4 book ai didi

reactjs - React-Redux : mapDispatchToProps methods not found

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

我的印象是,添加到 mapDispatchToProps 的方法应该可以通过 this.props 访问。当我调用这些方法时,会引发“Uncaught TypeError:this.props.onHighlight 不是函数”。有人知道发生了什么事吗?一直在尝试一系列不同的 mapDispatchToProps 替代方案,但它们都不起作用。

   import React from 'react';
import { addHighlight, deleteHighlight, selectHighlight } from 'actions/highlight';
import { connect } from 'react-redux';
import jquery from 'jquery';
import { styles } from './styles.scss';

const mapDispatchToProps = dispatch => {
return {
onHighlight: (start, end, selectedText) => {
dispatch(addHighlight(start, end, selectedText));
},
onDeleteHighlight: (source) => {
dispatch(deleteHighlight(source));
},
onSelectHighlight: (source) => {
dispatch(selectHighlight(source));
}
};
}

const mapStateToProps = state => {
return { highlights: state.highlights,
currentTopic: state.currentTopic,
selectedHighlight: state.selectedHighlight,};
}

...
Other code about Highlight object
...

export default connect(
mapStateToProps,
mapDispatchToProps
)(Highlight);

最佳答案

尝试使用bindActionCreators :

import { bindActionCreators } from 'redux'

const mapDispatchToProps = dispatch => {
return bindActionCreators({
onHighlight: addHighlight,
onDeleteHighlight: deleteHighlight,
onSelectHighlight: selectHighlight
}, dispatch);
}

关于reactjs - React-Redux : mapDispatchToProps methods not found,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38359711/

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