2016-07-07 3 views
2

Итак, моя идея состоит в том, чтобы улучшить уже созданный магазин с моим магазином ...Можно ли объединить созданные магазины в redux?

кода псевдо будет что-то вроде этого:

const store = createStore(reducer); 
const myStore = createStore(reducer); 

enhanceStore(store, myStore); 

Целью этого является то, что я создаю библиотеку, которая использует сокращение под капотом, сегодня я настраиваю свой собственный библиотечный магазин ... Но я не могу проверить, использует ли пользователь уже время, в этом случае я хочу объединить свой магазин с его ,

Это не обязательно, чтобы объединить 2 магазина, возможно, я могу улучшить уже созданный магазин с новым редуктором ...

Спасибо!

ответ

0

Возможно, это не то, что вам нужно, но вы можете экспортировать редуктор из myStore и объединить его с редуктором store.

combineReducers({ 
    ... 
    myStoreApp: myStoreReducer 
)} 

Если myStore имеет другие важные операции, как сложной инициализации, вы должны вручную объединить эти операции вместе с инициализацией store «s. Сразу отметим, что myStore состояние дерева теперь живет под ключ myStoreApp

+0

hmmm, я считаю, что ваш пример предполагает, что я еще не инициализировал магазин ... Поэтому, объединив все редукторы, мне нужно просто позвонить 'createStore' с этими объединенными редукторами ... Дело в том, что я хочу вводите новый редуктор после вызова 'createStore' ... Что-то похожее на' store.replaceReducer', но все же это не так:/ –

2

Я надеюсь, что вы ищете store.replaceReducer()

Это продвинутый API. Возможно, вам понадобится это, если ваше приложение реализует разделение кода, и вы хотите динамически загружать некоторые из редукторов.

+0

Да, это возможное решение, основная проблема заключается в том, что 'replaceReducer' буквально заменяет все редукторы на новый ... Я хотел бы просто ввести новый редуктор внутри текущего магазина ... Таким образом, мне не нужно беспокоиться о редукторах, которые уже были там ... –

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