【问题标题】:integrating 'react-thunk': 'cannot call a class as a function'集成“react-thunk”:“不能将类调用为函数”
【发布时间】:2016-12-13 10:54:31
【问题描述】:

如何解决?

composeWithDevTools(applyMiddleware()) // work
composeWithDevTools(applyMiddleware(thunk)) // don't work

控制台错误信息:

Uncaught TypeError: Cannot call a class as a function

代码:

import { createStore, applyMiddleware } from 'redux';
import { composeWithDevTools } from 'redux-devtools-extension';
import thunk from 'react-thunk';

createStore(reducer, composeWithDevTools(applyMiddleware(thunk)));

【问题讨论】:

    标签: javascript reactjs redux-thunk


    【解决方案1】:

    改为

    import thunk from 'react-thunk';
    

    必须

    import thunk from 'redux-thunk';
    

    【讨论】:

    • 天哪,我被困了这么久,不明白为什么。有一个名为 react-thunk 的 npm 包,而我必须安装它,这弄乱了我所有的自动完成功能。我只是一直在看“react-thunk”并看到“redux-thunk”。不管怎样,你是救生员,先生。谢谢。
    【解决方案2】:
    import { createStore, applyMiddleware, compose } from 'redux';
    import { browserHistory } from 'react-router';
    import { routerMiddleware } from 'react-router-redux';
    import reducers from '../reducers/';
    import thunk from 'redux-thunk';
    
    const middlewares = [thunk, routerMiddleware(browserHistory), apiMiddleware];
    
    const enhancers = compose(
      applyMiddleware(...middlewares),
    );
    
    const store = createStore(reducers, enhancers);
    
    
    export default store;
    

    【讨论】:

      猜你喜欢
      • 2022-01-12
      • 2020-10-11
      • 2021-06-26
      • 1970-01-01
      • 2017-10-21
      • 1970-01-01
      • 1970-01-01
      • 2018-01-31
      • 2020-03-25
      相关资源
      最近更新 更多