【问题标题】:Complaints about ambient getters/setters关于环境 getter/setter 的投诉
【发布时间】:2019-11-07 20:51:39
【问题描述】:

我有一个开源库——Firemodel——其中使用 ES 类和这些类中的 getter/setter。这从来都不是问题,但突然在我正在使用的 VueJS 前端代码中抱怨这些 getter/setter 的每个实例。

以下是错误呈现方式的示例:

从红色波浪线中可以看出,当我在 vs-code 中打开 d.ts 文件时,它会识别出错误,但相反,当我转到 Firemodel 存储库并打开时与 vs-code 相同的转译文件没有错误。

值得注意的是,当我使用 Firemodel 进行编译时,我使用 tsc 并且没有出现错误。我有一个 Firemodel 的使用者,它也使用 tsc 进行转译,而且 Firemodel 生成的 *.d.ts 文件也没有问题。但是,VueJS 项目——它使用 Vue CLI 的开箱即用设置——构建失败并出现这些错误。它使用 Babel 进行转译。

这让我觉得也许 Babel 是真正的罪魁祸首,但我不确定。有人见过这个吗?有什么想法吗?

【问题讨论】:

    标签: typescript vue.js babeljs


    【解决方案1】:

    问题似乎可以通过将消费应用程序(又名 VueJS 应用程序)中的 Typescript 本地版本升级到 3.7.x 来解决(它已经在 3.5.x 上,当您使用 @ 时,这仍然是新项目的默认值987654321@ 并选择 Typescript 选项)。

    注意:我不知道为什么会修复它,但我已经尝试过两个项目,它们似乎都可以工作。如果有人知道为什么我很想听听。 Babel 是否检测到这一点并表现不同? VueJS 构建系统会检测到吗?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-05
      • 1970-01-01
      • 2012-04-14
      • 1970-01-01
      相关资源
      最近更新 更多