2016-08-24 46 views
1

我试图用typings加载定义文件bowser。我已经安装了打字机并运行typings install dt~bowser -DG --save-dev以在本地安装。这很好。但是现在我不知道如何使用它。在过去,它“只是工作” - 这意味着,现在如果我尝试写一些东西,在打字稿引用鲍泽,它会找到我的定义文件(从DefinitelyTyped分型下载),并承认bowser作为一个全球性的功能。但是现在,它看起来像定义文件发生了变化,它现在是一个“模块”:你如何使用TypeScript打字模块?

declare module 'bowser' { 
    var def: BowserModule.IBowser; 
    export = def; 
} 

我怎么在我的打字稿文件中使用呢?当然我可以做这样的事情:

declare var bowser: BowserModule.IBowser; 

但是,这感觉错了/哈克。我在这里错过了什么 - 在typings/DefinitelyTyped的世界里发生了什么变化?

回答

1

The correct syntax would be

import bowser = require('bowser') 

如果你的分型的配置是否正确,它应该工作。否则,检查typings/index.d.ts文件在您的构建脚本中引用,如果库巴在有正确引用:

/// <reference path="globals/bowser/index.d.ts" /> 
+0

感谢您的帮助,这让我进一步。但现在它说它无法找到我在其他.ts文件中定义的常规导出类。我能够添加另一个'import'语句来修复它 - 但这看起来很疯狂?一旦添加了一个'import',它是否需要从该点导入所有外部依赖关系? –

+0

在任何类型的代码之前,'///

+0

如果你问我。虽然,我认为ES6标准的“导入”语句应尽可能 –