Реагировать селектор с помощью реселекта - createStructuredSelector - PullRequest
0 голосов
/ 21 февраля 2019

Интересно, если вы дадите идею, я буду благодарен.

Я впервые использую пакет повторного выбора в одном из моих проектов.Я создаю makeGetVisibleTodos базу селектора по ссылке ниже, затем, если я свяжу этот селектор с компонентом, как показано ниже, используя createStructuredSelector;

const mapStateToProps = createStructuredSelector({
  visibleTodos: makeGetVisibleTodos()
});

Работает ли он?Я имею в виду, если я использую этот компонент несколько раз, у меня возникли проблемы из-за совместного использования компонента?Таким образом, я не создал функцию для mapStateToProps, например makeMapStateToProps.

https://github.com/reduxjs/reselect#sharing-selectors-with-props-across-multiple-component-instances

Спасибо

1 Ответ

0 голосов
/ 27 февраля 2019

Это не будет работать так, как задумано, потому что вы вызываете makeGetVisibleTodos только один раз, при создании структурированного селектора.Получившийся селектор будет использоваться всеми экземплярами компонента.Если это проблема (поскольку результат селектора зависит от свойств компонента, вам нужно добавить уровень косвенности, как описано в разделе повторного выбора документов :

const mapStateToProps = () => createStructuredSelector({
  visibleTodos: makeGetVisibleTodos()
});
...