【问题标题】:Default import cannot invoke an expression whose type lacks a call signature默认导入不能调用类型缺少调用签名的表达式
【发布时间】:2018-08-28 09:52:45
【问题描述】:

我正在尝试将 https://github.com/arnaudbenard/redux-mock-store 与 TypeScript 一起使用。我还安装了@types/redux-mock-store,其中有export default createStore

我尝试使用以下方式导入:

import createStore from 'redux-mock-store';

import * as createStore from 'redux-mock-store';

TypeScript 在第一次导入时没有显示任何错误,但是当我实际运行代码时它不起作用,因为我得到 redux_mock_store1.default is not a function。

当我实际运行测试时,第二次尝试正常工作,但 TypeScript 抱怨“无法调用类型缺少调用签名的表达式”,说 @types/redux-mock-store 的默认导出没有兼容的索引签名。

如何正确导入或使用模块,让 TypeScript 不报任何错误?

【问题讨论】:

    标签: typescript


    【解决方案1】:

    似乎redux-mock-store 的最新版本引入了一个破坏性更改,破坏了库和相关的类型。请参阅Github 上的问题。您可以恢复到上一个​​工作版本:

    yarn add --dev redux-mock-store@1.4.0
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-03-01
      • 2017-09-01
      • 2017-12-19
      • 2021-02-06
      • 2017-07-14
      • 2017-03-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多