无法调用类型缺少调用签名的表达式。

时间:2017-07-14 06:13:42

标签: reactjs typescript typescript-typings typescript2.0

我对react/lib/update使用typescript方法。

我为它写了一个定义文件,如下所示:

declare module 'react/lib/update' {
  export default function update<S>(value: S, spec: any): S;
}

并且,像这样使用它:

import * as update from 'react/lib/update';

tsc给我一个错误:

Cannot invoke an expression whose type lacks a call signature. Type 'typeof 'react/lib/update'' has no compatible call signatures.

我的定义文件似乎不正确。怎么解决这个问题?

1 个答案:

答案 0 :(得分:1)

由于您在函数update上有默认导出,因此必须将其导入为:

import update from 'react/lib/update';