Javascript 带有redux redux saga初始化存储的Nextjs

Javascript 带有redux redux saga初始化存储的Nextjs,javascript,redux,redux-saga,nextjs,Javascript,Redux,Redux Saga,Nextjs,像这样 import {createStore, applyMiddleware, combineReducers} from 'redux' import {composeWithDevTools} from 'redux-devtools-extension' import withRedux from 'next-redux-wrapper' import nextReduxSaga from 'next-redux-saga' import createSagaMiddleware fr

像这样

import {createStore, applyMiddleware, combineReducers} from 'redux'
import {composeWithDevTools} from 'redux-devtools-extension'
import withRedux from 'next-redux-wrapper'
import nextReduxSaga from 'next-redux-saga'
import createSagaMiddleware from 'redux-saga'

import {initialState} from './initialState'
import globalSaga from '../sagas/global'

const sagaMiddleware = createSagaMiddleware()

export function configureStore (reducers,initialState) {
  console.log(initialState)

  let states = {}
  Object.keys(reducers).map((key) => {
    states[key] = initialState[key]
  })

  console.log(reducers)
  console.log(states)
  const store = createStore(
    combineReducers({reducers}),
    states,
    composeWithDevTools(applyMiddleware(sagaMiddleware))
  )
  store.sagaTask = sagaMiddleware.run(globalSaga)
  return store
}

export function withReduxSaga (BaseComponent, reducers) {
  return withRedux(configureStore(reducers,initialState))(nextReduxSaga(BaseComponent))
}

export default function configureWithReduxSaga(component,reducers){
  return withReduxSaga(component,reducers)
}
错误是

Store does not have a valid reducer. Make sure the argument passed to

makeStore is not a function
可能会有什么问题,基本上我想写一个函数,在nextjs组件中添加减缩器存储。全局,在没有太多代码的情况下,最好是这样:

configureWithReduxSaga(
{reducer1, reducer2},
{saga1, saga2}
)
可能吗?我可以创建root reducer和root saga并将其传递给每个组件,这并不难编码,但它是否性能良好

combineReducers({reducers}),
最有可能的情况是,您有一个减缩器字典,但将它们包装到冗余对象中。在这种情况下,使用rest-spread操作符
combinereducer({…reducer})
或简单对象传递
combinereducer(reducer)
。请参见原始文档:


如果
reducers
是数组,您应该迭代它并为每个reducer指定自己的名称

那么问题解决了吗?我也有同样的问题,但我无法从答案中理解任何东西。