我有一个简单的TypeScript(ts)需要JavaScript文件中的函数。如何将该js文件导入ts文件?我是否必须为该js文件创建一个ts文件才能在我的ts文件中使用它?
答案 0 :(得分:24)
最简单的方法是declare
您正在使用的功能:
<强> File1.js 强>
function greet() { return "Hello!"; }
<强> File2.ts 强>
declare function greet(): string;
/* ... later ... */
var hi = greet();
如果您的场景更复杂(即多个文件引用File1.js,或者File1.js中有许多函数会使File2.ts混乱),您可以创建一个File1.d.ts文件并从中引用它File2.ts:
<强> File1.d.ts 强>
function greet(): string;
<强> File2.ts 强>
/// <reference path="File1.d.ts" />
/* ... later ... */
var hi = greet();
答案 1 :(得分:2)
仅针对存档,如果在TS文件中为JavaScript文件添加/// ref,编译器将尝试验证JS文件中的所有代码并抛出巨大的错误列表。尝试使用jQuery或类似的东西,你会明白我的意思。