首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >React Redux组件未在状态更改时重新呈现

React Redux组件未在状态更改时重新呈现
EN

Stack Overflow用户
提问于 2018-05-28 08:36:53
回答 1查看 1.3K关注 0票数 0

如何确保触发状态更改并在组件中捕获它?

我的应用程序有一个操作,该操作在过滤器组件中单击时触发。此筛选器执行搜索并返回新产品(基于筛选器)。

该操作有效,使用React Chrome扩展,我可以看到产品的全局状态正在变化。但是,我无法在我的shopComponent中获取新状态,这将根据新产品状态更改显示的产品。:(

代码语言:javascript
复制
class shopProduct extends Component {

    constructor(props) {
        super(props);
        this.state = {...localStateItems }
    }

    render() {
        if(this.props.products != undefined) {
          console.log('not undefined: ', this.props.products);
          // NOTHING IS SHOWING
        }
        console.log('shopProducts Render: ', this.props);
        // NOTHING IS SHOWING

        return (
            ...Some new products
        )
    }
}

const mapStateToProps = (state, ownProps) => ({
    cart: state.cart,
    products: state.products
});

shopProduct.propTypes = {
    productSearch: PropTypes.func.isRequired,
    products: PropTypes.object
};

export default connect(mapStateToProps, { productSearch, products })(shopProduct);

我是否正确地将其映射到shopProduct组件?

EN

回答 1

Stack Overflow用户

发布于 2018-05-28 08:49:43

我认为您误解了传递给connect的第二个参数应该是什么。根据the docs的说法,它应该是mapDispatchToProps。您正试图传入您的propTypes,这并不是第二个参数所期望的。您可能想要阅读有关what mapDispatchToProps is for的内容。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50557771

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档