12

我有一个简单的 TypeScript (ts),它需要 JavaScript 文件中的函数。如何将该 js 文件导入 ts 文件?我是否必须为该 js 文件创建一个 ts 文件才能在我的 ts 文件中使用它?

4

2 回答 2

24

最简单的方法是只declare使用您正在使用的功能:

文件1.js

function greet() { return "Hello!"; }

文件2.ts

declare function greet(): string;

/* ... later ... */
var hi = greet();

如果您的场景更复杂(即多个文件引用 File1.js,或者 File1.js 中有许多函数会使 File2.ts 混乱),您可以创建一个 File1.d.ts 文件并从 File2.ts 引用该文件:

文件 1.d.ts

function greet(): string;

文件2.ts

/// <reference path="File1.d.ts" />

/* ... later ... */
var hi = greet();
于 2012-12-06T22:05:12.297 回答
2

仅针对存档,如果您在 TS 文件中为 JavaScript 文件添加 /// 引用,编译器将尝试验证 JS 文件中的所有代码并抛出一个巨大的错误列表。用 jQuery 或类似的东西试试,你会明白我的意思。

于 2012-12-08T13:11:22.823 回答