我在项目中添加了第三方包(jquery,colorbox)。首先我在npm上安装了throw,之后我添加了" angular-cli.json"
"scripts": [
"../node_modules/jquery/dist/jquery.js",
"../node_modules/jquery-colorbox/jquery.colorbox.js", ....
我在组件中声明了
declare var $:any;
declare var colorbox:any;
and the code
ngAfterViewInit(){
$(document).ready(function(){
$(".alma1").colorbox({rel:'alma1'});
});
}
和视图
<a class="alma1" href="{{pic.pictureURL}}" title="{{pic.desc}}">
<img class="alma" src="{{pic.pictureURL}}" alt="{{pic.desc}}">
</a>
当我第一次点击链接时,它会将我带到google firebase存储链接页面,之后当我回到网页并再次单击链接时,colorbox包工作正常。我调用了ngAfterViewInit(),但看起来并不存在。 为什么不第一次工作?
答案 0 :(得分:0)
您需要使用一个加载器将jQuery lib传递给angular 2项目。并且您还需要确保在您的转换时间内可以使用jquery类型。
你可以使用systemjs loader,在系统配置中添加jquery路径,你的打字符会理解jquery。
如果您将使用systemjs加载程序,它也将在浏览器中可用。