Typescript是否支持使用JavaScript库的现有项目?

时间:2013-05-31 21:25:51

标签: typescript

我想在现有项目中开始使用TypeScript,但是我需要在TypeScript文件中使用许多共享的JavaScript库。有没有办法让TypeScript用项目相关的代码引用那些现有的JavaScript库?

我还尝试将现有的JavaScript库移植到TypeScript,并且我遇到了很多编译时错误。删除所有编译时错误很困难。为什么TypeScript不能仅使用Google Dart编译器等“抑制错误和警告”选项来引用这些JavaScript类?

2 个答案:

答案 0 :(得分:10)

这里有两种情况:

  1. 您正在从TypeScript调用JavaScript
  2. 在这方面,TypeScript的工作方式与谷歌闭包编译器非常相似。在使用之前,一切都需要声明。

    因此,如果您有一个具有变量Foo(类,模块,数字等)的单独JavaScript文件,则需要告诉TypeScript。在最基本的情况下,您可以执行以下操作:

    declare var Foo: any;
    

    否则您将收到编译错误。

    稍后您可以在此声明的基础上进行构建。对于第三方库,https://github.com/DefinitelyTyped/DefinitelyTyped

    提供了大量资源
    1. 将JavaScript复制到TypeScript
    2. 可能导致编译错误的另一个问题是将JavaScript复制到TypeScript文件。在这里,TypeScript将帮助您捕获类型错误,如:

      var x = '123';
      var y = x.toPrecision(4); // Error x is string not a number 
      

答案 1 :(得分:3)

感谢您的所有评论。我在下面的链接中得到了完美的答案

How to slowly move to / migrate to TypeScript in an existing JavaScript system