【发布时间】:2018-08-30 20:34:11
【问题描述】:
假设我们有一个看起来像这样的 redux 商店:
{
"page1": {
"title": "Demo",
"content": "Testing"
},
"page2": {
"title": "Demo",
"content": "Yes, I'm aware the titles match."
}
}
现在让我们看看渲染标题的组件:
const Title = ({title}) => <h1>{title}</h1>
const mapStateToProps = state => ({
title: getCurrentPage().title
})
export default connect(mapStateToProps)(Title)
在上面的代码块中,getCurrentPage() 是一个记忆函数(通过重新选择),它根据某些条件(在本例中为 react-router 的 location.pathname)从状态中获取当前页面数据。
当 getCurrentPage() 返回的数据不同时,即使 {title} 的具体值保持不变,该组件是否会重新渲染?
如果是,记忆派生的 title 属性是否会将答案变为否?
【问题讨论】:
标签: javascript reactjs redux react-redux reselect