Допустим, у нас есть магазин редуксов, который выглядит так:
{
"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 () представляет собой запомненную функцию (посредством повторного выбора), которая извлекает данные текущей страницы из состояния на основе некоторого условия (в данном случае это location.pathname реагирующего маршрутизатора).
Будет ли этот компонент повторно визуализироваться, если данные, возвращаемые getCurrentPage (), отличаются, даже если конкретное значение {title} остается прежним?
Если да, помнит ли производный заголовок реквизит изменить ответ на нет?