http://blog.csdn.net/z_pigeon/article/details/79112108
[1]放置文件
把引入的文件放到www下的assets目录下,这里引入的文件在重新编译过程中是不会被覆盖的,所以引入文件放到这里
[2]引入文件
在index.html下引入文件,注意修改的是src目录下的index.html,不是www目录下的,如果修改成www下的,会被src下重新编译的index.html覆盖掉.
举例引入jquery(注意:文件路径是assets/)
<script src="assets/jquery-1.7.2.min.js"></script>
[3]声明文件
(1)在src目录下建一个services(名字随意)文件夹,新建文件jquery.d.ts,后缀是.d.ts,注意这个,名字随意
(2)编辑该文件,写入(注意:这里的"$",其实用的是jquery的关键词,有时候引其他js的时候你不知道关键词是什么,没关系,请继续往下)
declare var $:any;
[4]页面使用
页面引入:(注意:第一句就是引入,,注意是"///" ,看你文件自己位置,我的页面ts是在src/pages/home/下;第二个点,重要,引入这句话一定要放在ts文件内容最顶上,其他位置不起作用 )
1. ///<reference path="../../services/jquery.d.ts"/>
2. import { Component } from '@angular/core';
(2)页面使用$(function(){}),就能随意用,不会报错
[5]关键词选取问题
引入你的js后,写入声明后,在ts中调用你引入的文件中相关逻辑的时候,看看什么对象报错了,就把该文件声明关键词设置为该对象
例:引了一份pinchzoom.js的文件,但是使用的时候我这里RTP报错了,那么就是说该文件需要的关键词有RTP,那么我在编写它的声明文件.d.ts的时候就要把它写成 declare var RTP:any;就可以了.这类引入第三方js一般封装好对象应该只有一个,多个的话大家自行研究哈
$('div.pinch-zoom').each(function () {
new RTP.PinchZoom($(this), {});
});