У моего компонента React есть реквизит, который представляет собой экземпляр класса, основанный на данных, поступающих из хранилища избыточности.
Причина этого в том, что гораздо удобнее работать с этими данными, используя класс и все его пользовательские методы (более 50).
Я не могу использовать PureComponent, поскольку React всегда считает, что эта опора изменилась. Проблема в том, что большинство моих компонентов React подключены к этому реквизиту...
Я знаю о таком решении, как повторный выбор, но это означало бы наличие слишком большого количества (столько, сколько у моего класса есть настраиваемые методы) селекторов только для манипулирования этими данными.
Что ты предлагаешь?
Мой выбор редукса выглядит так:
getStation(state) {
// some logic to fetch the right station
return new WeatherStation(state.services.stationList[i])
}
где WeatherStation:
class WeatherStation {
constructor (data) {
this.station = data
}
getId() {...}
// many more methods
}
и в моем React Compoonent:
class MyComponent extends React.Component {
...
const mapStateToProps = (state, ownProps) => {
return {
station: getStation(state),
}
}
}
shallowCompare
.. поэтому каждый раз, когда вы меняете свои данные, результатом будут новые данные, immutablejs предоставляют все это + умные алгоритмы сравнения - person hawk   schedule 27.09.2017