【问题标题】:Error out of nowhere: "Cannot invoke an expression whose type lacks a call signature. Type 'RaygunStatic' has no compatible call signatures."突然出现错误:“无法调用类型缺少调用签名的表达式。类型‘RaygunStatic’没有兼容的调用签名。”
【发布时间】:2018-07-10 04:15:55
【问题描述】:

我们有一个 angular / ionic 应用程序,它使用 typescript 并安装了 raygun 库。直到今天它一直在构建良好,就在今天我在构建时开始出现以下错误

“无法调用类型缺少调用签名的表达式。类型 'RaygunStatic' 没有兼容的调用签名。”

这发生在以下代码行

rg4js('setUser', {

在我的文件顶部

import * as rg4js from 'raygun4js';

一周前我正在从 git 编译完全相同的代码,该代码正在运行。我在本地和在 ionic pro 上运行构建时遇到了同样的错误,这很奇怪,因为它不应该归结为我的机器上的任何版本发生变化,因为它一周前在 ionic 框架中工作,现在它不是,代码没有任何变化。

有些东西变了,但我不知道是什么。

我已经联系了 raygun,他们说:

我们确实知道定义存在一些问题 导出所有正确的信息,我们希望在 未来。

但我不明白为什么它会在上周而不是今天起作用。我没有更改raygun库的版本。

任何帮助表示赞赏。

干杯, 抢

【问题讨论】:

    标签: typescript ionic-framework raygun raygun.io


    【解决方案1】:

    暂时不太好的“修复”是将rg4js 用法标记为任何。然后编译器将忽略此用法的类型检查。

    (rg4js as any)('user', {...

    至于为什么它以前有效,现在不再有效,我不知道。我经历过类型检查,说一切都很好,并且在出现错误时符合要求,但当时没有进一步调查。

    【讨论】:

    • 是的,这就是我的想法,我需要做类似的事情才能让构建工作。谢谢
    猜你喜欢
    • 1970-01-01
    • 2020-05-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-26
    • 1970-01-01
    • 2017-10-11
    • 2019-10-08
    相关资源
    最近更新 更多