2016-08-18 7 views
6

У меня есть файл, который экспортирует различные служебные функции для использования через компоненты, и эти функции должны получить доступ к состоянию редукции. Как импортировать объект состояния в этот файл?Как получить доступ к хранилищу реакции-редукта вне компонента

ответ

0

Утилита должна получить состояние в качестве аргумента.

Потому что вы хотите использовать утилиту в компонентов (просмотров), вы можете сохранить состояние в переменной-члена на вашем смарт-компонент (тот, используя connect() функцию) с помощью mapStateToProps(state) обратного вызова. , то вы можете передать этот член своим немым компонентам.

+2

вы должны были бы передать членам утилиты КАЖДЫЙ раз, когда вы хотите использовать его, было бы здорово, если утилита может просто получить доступ к этим членам, чтобы мы не повторяли код ... – Vic

3

connect не работает здесь, если ваши функции полезности не являются react элементов.

Лучшая идея заключается в том, импорт создать магазин, а затем использовать функцию getState,

import store from 'store/createStore'; 
const state = store.getState(); 
+1

Я закончил тем, что просто пропустил n дополнительные реквизиты функции полезности из компонента контейнера –

1

Ну, это не простой ответ, но после изучения этого слишком долго, я нашел их, которые являются единственным 2 статьи, которые объясняют что-либо. Они объясняют, как получить доступ к хранилищу непосредственно за пределами Компонента (если нужно), а также упомянуть философию чистых функций/функционального программирования, а также потенциальные проблемы с производительностью при непосредственном подключении к хранилищу некомпонентных функций. Лично я пошел с @anoop и передал параметры вокруг в одном объекте настолько глубоко, насколько это необходимо.

Для прямого подключения (который получает от магазина this.context пути подключения() не смотрите обсуждение here и конкретно gaearon Прокомментируют сны 16, 2015 и 22 сен, 2015 Это кажется, что этот доступ может быть достигается с помощью функции Connect()

для небольшого чтения по функциональному программированию/чистых функций, смотрите обсуждение here

 Смежные вопросы

  • Нет связанных вопросов^_^