【问题标题】:Import jQuery & other libraries in Typescript在 Typescript 中导入 jQuery 和其他库
【发布时间】:2018-02-03 09:50:13
【问题描述】:

经过几天的研究和挣扎,我不得不在这里请求罚款某人以澄清在 Typescript 中导入库的过程。

我以前只是添加标签,一切正常。 现在我正在尝试构建一个 MEAN-Stack 应用程序,我不知道这一切如何与定义文件等一起工作......

到目前为止我做了什么:

npm install jquery //terminal root: /project/angular-src
npm install @types/jquery //same directory here

然后我在我的一个 .ts 文件中导入 jQuery

import * as $ from 'jquery'; 

我尝试了几种变体(在项目文件夹而不是 angular-src 文件夹中安装 jQuery 和 @types/jQuery),但没有一个对我有用。我认为这会很简单,但也许我在这里遗漏了一些东西。我总是遇到一些错误,比如“通用类型 'xyz' 需要 x 个参数”(比如 200 行这些)

希望你能帮我解释一下为什么这不起作用以及如何使它起作用

PS:我之前在这里发现了类似的问题,但我并没有真正发现它们有帮助,因为我尝试了它们但没有成功

【问题讨论】:

  • MEAN 中的 A 表示 Angular。为什么你需要 jQuery 和 Angular?不要使用jQuery,问题解决了。

标签: javascript jquery typescript types mean-stack


【解决方案1】:

事实上,您可以将 jQuery 与 TypeScript 一起使用。您需要下载位于 here 的 jQuery 定义文件。

下载后,将定义文件(在 v2 文件夹下的“index.d.ts”文件下)复制到您的解决方案/项目中。

添加到项目后,您可以通过将其添加到 .ts 文件的顶部来引用 jQuery 定义文件:

///<reference path="../{your-location}/jquery.d.ts"/>

应该在你的 TypeScript 应用中启用 jQuery。

【讨论】:

    【解决方案2】:

    JQuery 和 Angular 是两个不同的东西,要么使用 Angular,要么使用 JQuery。

    【讨论】:

    • ...或者更好的是,不要导入 jQuery 并坚持使用 Angular。
    • @JeremyThille 一个相当明智的方法。但如果仍然要使用 jquery
    • 你不需要。如果您使用 Angular,则不需要 jQuery。如果您绝对需要 jQuery,那么构建一个 jQuery 应用程序,而不是一个 Angular 应用程序。不要混淆这两者。
    • 好的,谢谢大家...似乎那是错误的方法...然后我会更好地阅读角度 2... 我真的可以像使用 angular 一样轻松获得相同的结果吗使用 jquery(.hide /.show / .datepicker 和带有动画的此类功能)
    • @JohannesBeiser 请为答案投票,以便它可以帮助社区中的其他人。是的,您可以像 JQuery 一样获得 angular 2。我建议您在开始项目之前阅读一些文档。希望对您有所帮助
    猜你喜欢
    • 2012-12-13
    • 2016-12-28
    • 2012-10-07
    • 2020-04-02
    • 1970-01-01
    • 2019-11-18
    • 1970-01-01
    • 2014-07-15
    • 2018-07-18
    相关资源
    最近更新 更多