javascript - 在同构应用程序中使用 redux

标签 javascript express reactjs redux

我正在尝试使用 react+redux+express 创建一个同构/通用应用程序,但我在从 server.js 创建商店时遇到了一些问题。

在 server.js 中我有:

import { configureStore } from './store/configureStore';
const store = configureStore();

在我的 configureStore 中:

import { createStore, applyMiddleware } from 'redux';
import thunkMiddleware from 'redux-thunk';
import createLogger from 'redux-logger'
import rootReducer from '../reducers/index';

const createStoreWithMiddleware = applyMiddleware(thunkMiddleware)(createStore);

export default function configureStore(initialState) {
  const store = createStoreWithMiddleware(rootReducer, initialState);

  if (module.hot) {
    // Enable Webpack hot module replacement for reducers
    module.hot.accept('../reducers', () => {
      const nextRootReducer = require('../reducers').default
      store.replaceReducer(nextRootReducer)
    })
  }

  return store;
}

我得到这个错误:

TypeError: (0 , _configureStore.configureStore) is not a function

线上:const store = configureStore();

为什么?我做错了什么?

如果能知道有用的话,我的目录结构是这样的: - 来源 - 店铺 ---- configureStore.js -- 服务器.js

最佳答案

您正在导出默认值,因此请移除导入周围的花边:

import configureStore from './store/configureStore';

或者,从导出中删除 default 并继续使用 curl 。

每当您看到该错误时,它通常是您导入/导出函数的方式导致的,因此请密切注意这些错误,然后您就可以开始了!

关于javascript - 在同构应用程序中使用 redux,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36700172/

相关文章:

jquery - 无法在expressjs中安装jQuery文件上传

node.js - Express.js : show toastr message

node.js - 如何在 Windows 10 上安装 bcrypt

javascript - 在 React 中检索多个子组件的状态

reactjs - Webpack 4 + React Router两个子路径返回null

javascript - 无法正确序列化 JavaScript 对象

javascript - 如何使html属性的存在动态化?

javascript - 当我将其名称作为字符串时如何执行私有(private) JavaScript 函数

javascript - 为什么不应该使用 componentWillMount?

javascript - 为什么我的 ReactJs 循环下拉列表会自动调用多次