После прочтения множества статей по React, Redux и мемоизации я хотел бы задать вопрос ... Могу ли я обойтись без этого варианта использования:
Предположим, у меня есть магазин с избыточностью сследующие данные
// reduxStore
module.exports = {
randomData: [
{ name: 'John', age: 30 },
{ name: 'Peter', age: 25 },
{ name: 'Brenda', age: 15 }
];
};
Теперь в моем компоненте я хочу получить средний возраст.Я делаю это примерно так:
import React from 'react';
import { connect } from 'react-redux';
export function TestComponent(props) {
return <p>The sum of ages is: {props.ageSum}</p>;
}
const mapStateToProps = state => ({
ageSum: state.randomData.map(datum => datum.age).reduce((acc, curr) => acc + curr)
});
const mapDispatchToProps = {};
export default connect(mapStateToProps, mapDispatchToProps)(TestComponent);
У меня сложилось впечатление, что это работает так же, как примеры, приведенные с reselect
и другими библиотеками, рекомендованными React.
Можеткто-то, пожалуйста, объясните, если и почему этот пример не является мудрым, когда речь заходит об оптимизации ...