1

我在我的 redux react 应用程序中使用 redux-observable。下面给出的是我将所有内容连接起来的代码。我也在使用 redux-dev 工具。

const rootEpic = combineEpics(
    storeEpic
);

const epicMiddleware = createEpicMiddleware(rootEpic);

//Combine the reducers
const reducer = combineReducers({
    syncSpaceReducer,
    routing: routerReducer
});

const loggerMiddleware = createLogger();
const enhancer = compose(
    applyMiddleware(thunkMiddleware, loggerMiddleware, epicMiddleware),
    DevTools.instrument()
);

const store = createStore(reducer, enhancer);

我的史诗有以下代码

export const storeEpic = action$ =>
    action$.ofType('FETCH_STORES')
    .mapTo({
        type: 'FETCHHING_STORES'
    });

现在,当我运行该应用程序时,出现以下错误

未捕获的类型错误:无法读取未定义的属性“应用”

我在这里做错了什么?

4

2 回答 2

0

只需在调用 combineEpic 的文件中导入 storeEpic 即可

于 2017-05-23T23:07:12.433 回答
0

我不确定我们是否可以这么说。您提供的所有代码似乎都很好。了解问题的最简单方法是查看该错误的堆栈跟踪。它发生在哪里?是什么导致了它的发生?在那里设置一个断点或在调试器中使用“暂停异常”来查看究竟是什么试图调用apply一个变量undefined——为什么会这样undefined?这最终才是真正的问题。


根据您的评论进行编辑。

问题是你传递给combineEpics的实际上不是你的史诗,它是undefined. 当您的史诗导入有错字或未按预期导出时,通常会发生这种情况。在此之前暂停调试器combineEpics,您将看到哪个未定义(或全部)。

于 2017-03-13T03:24:51.553 回答