TypeScript仅作为声明导入?

时间:2016-08-11 08:46:50

标签: typescript import intellisense declaration visual-studio-code

是否可以在TypeScript中导入节点模块而无需在编译后实际尝试导入?

我的意思是:
我在名为intellisense.ts的文件中创建了一个全局变量,我在其中调用:

/// <reference path="./intellisense.ts" />
fs.existsSync('...');

然后在引用它的另一个文件中:

$sftp = new Net_SFTP('domain1', 22);

var_dump($sftp->login('username1', 'password1'));

unset ($sftp);

$sftp2 = new Net_SFTP('domain2', 22);

var_dump($sftp2->login('username2', 'password2'));

此时VSCode intellisense告诉我它找不到名字&#39; fs&#39;。

有没有办法在不导入其他文件中的fs的情况下解决这个问题?

请注意:

  • 我只需要输入一次fs
  • 我不想从intellisense.ts
  • 导出fs
  • 我不想以任何方式导入intellisense.ts
  • 我想将全球范围内的fs仅作为参考

1 个答案:

答案 0 :(得分:0)

  

我在文件中创建了一个全局变量

这不是一个全局变量。它是该文件中的导入模块。您需要在使用它们的每个文件中显式导入模块。

更多

https://basarat.gitbooks.io/typescript/content/docs/project/modules.html