【问题标题】:TypeScript just for typings in Visual Studio 2015TypeScript 仅用于在 Visual Studio 2015 中输入
【发布时间】:2016-11-29 18:51:54
【问题描述】:

我只想使用 TypeScript 进行打字。我不想使用类、接口,甚至不想使用 TypeScript 定义。原因是我正在使用一些没有 TypeScript 定义的 jQuery 插件,并且由于时间限制我无法编写它们。

我一直在阅读,我应该能够在没有其他功能的情况下使用类型,因为 TypeScript 是基于 JavaScript 的,但我真的找不到方法。考虑下面的代码。我没有使用 jQuery 类型定义,因此我得到“找不到名称 $”。同样,如果 TypeScript 定义不能涵盖我使用的所有内容,我不想使用它们。

所以 TS 文件不会被转译成 JS 文件。并且 Visual Studio 2015 中的构建失败。

我的问题是 - 我怎样才能在 Visual Studio 2015 中使用它?这是我的 TS 文件:

class Dto {
    name: string;
    age: number;
}

$.ajax({
    url: "",
    method: "PUT",
    data: {}
})
.then(function (response: Dto) {
    response.age = 16;
});

【问题讨论】:

  • typescript 定义是 typescript 了解类型的方式,没有它们,您就无法键入第三方库。
  • 没有类型定义的TypeScript是没用的。

标签: typescript visual-studio-2015


【解决方案1】:

使用 JQuery 无需输入

在使用$之前,可以向编译器声明它存在:

declare var $: any;

您可以将使用的每个全局变量声明为 any 类型,编译器不会抱怨它们。

使用 JQuery 类型和不使用类型的插件

使用 TypeScript,每个界面都可以从任何地方完成。为 JQuery 导入类型后,可以从您自己的代码中添加缺少的成员:

interface JQuery {
  hereAMemberName: any
}
$('body').hereAMemberName // OK

和/或:

interface JQueryStatic {
  hereAMemberName: any
}
$.hereAMemberName // OK

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-02-07
    • 2015-12-04
    • 1970-01-01
    • 2017-02-09
    • 1970-01-01
    • 1970-01-01
    • 2015-10-12
    • 2015-11-24
    相关资源
    最近更新 更多