Angular2 RC5导入第三方JS库:摊牌

Uli*_*man 0 javascript showdown angular

我无法将Showdown导入供应商.当我编译时,我进入showdown is not defined浏览器控制台.由于它是供应商包,我认为我不能将其导入app.module.ts.我需要声明自定义输入吗?包裹全部在js.我在Angular2 RC5上运行.谢谢!

home.service.ts

import 'showdown/dist/showdown';

declare var showdown: any;

private extractData(res: Response) {
   let body      = res.json();
   var converter = new showdown.Converter(),
   originalBody  = window.atob(body.content),
   body.title    = converter.makeHtml(title);
}
Run Code Online (Sandbox Code Playgroud)

vendor.browser.ts

import 'showdown/dist/showdown';
Run Code Online (Sandbox Code Playgroud)

Yak*_*ain 5

我不熟悉Showdown,但如果你想在代码中导入它,你需要有类型定义文件.如果您使用TypeScript 2.0,则只需从npmjs.org安装即可.我刚刚检查过 - 他们在@types组织中有Showdown的类型定义:https://www.npmjs.com/search q =% 40types%2Fshowdown

只要运行npm i @types/showdown --save-dev.

如果使用较旧的TypeScript,请使用Typings安装声明.不要忘记在index.html中为Showdown添加脚本标记.

在这个示例应用程序中,我隐含地使用JQuery,但不需要导入它:

https://github.com/Farata/angular2typescript/tree/master/chapter2/auction