1、在lib目录中添加 script.js 文件,并在index.html其他<script>之前引用之:

<script src="lib/script.js"></script>
 
2、在app.js中增加全局函数LazyLoadTemplate()和LazyLoadJs():
function LazyLoadTemplate(file) {
return function () {
return file;
}
} function LazyLoadJs(file) {
return {
deps: function ($q, $rootScope) {
var d = $q.defer();
$script(file, function () {
$rootScope.$apply(function () {
d.resolve();
})
});
return d.promise;
}
}
}
3、在app.config()函数中开始处增加:
var app = angular.module("app");
app.controllerProvider = $controllerProvider; // 主要是这个
app.compileProvider = $compileProvider; // 以下这两个备用
app.filterProvider = $filterProvider;
注意,要在config()的参数列表中增加相应的$controllerProvider、$compileProvider 和 $filterProvider。
 
4、在路由表中修改需要动态加载的状态路由配置,例如:
$stateProvider.state('page1', {
url: '/page1',
templateUrl: LazyLoadTemplate('page1.html'),
controller: 'Page1Ctrl',
resolve: LazyLoadJs("page1.js")
});
提示:
(1) 把 templateUrl属性的值改为调用函数 LazyLoadTemplate()。
(2) 增加 resolve属性,其值为调用函数LazyLoadJs()。
 
5、在控制器所在JS文件中,修改控制器的定义方式:
angular.module('app').controllerProvider.register("Page1Ctrl", function ($scope) {
$scope.title = "Page1";
});
提示:把原来的 controller() 函数调用改成  controllerProvider.register()。
 
6、从index.html中去掉对该控制器所在JS文件的引用,例如:
<!--<script src="page1.js"></script>-->
 
 
参考:
 

最新文章

  1. codevs 1063 合并果子//优先队列
  2. jquery自定义类似$.ajax()的方法
  3. JavaWeb学习----http协议
  4. Program A-归并排序
  5. 替换a链接的href和title
  6. 自定义jquery插件
  7. MongoDB安装,打开及增,删,改,查
  8. struts2对action中的方法进行输入校验---xml配置方式(3)
  9. Struts2--Action属性接收参数
  10. JavaWeb(六)Listener监听器
  11. bzoj 2242 [SDOI2011]计算器 快速幂+扩展欧几里得+BSGS
  12. java 实现文件上传下载以及查看
  13. nginx 出现504 Gateway Time-out的解决方法
  14. div行高不确定,文字和图片居中
  15. 一些NLP相关的JD,作参考
  16. ASP.NET学习笔记(3)——用户增删改查(三层)
  17. FJUT Home_W的gcd(乱搞)题解
  18. C# 通过IEnumberable接口和IEnumerator接口实现泛型和非泛型自定义集合类型foreach功能
  19. Storm一个executor里运行多个task是为了rebalance
  20. 使用SpringMVC搭建第一个项目

热门文章

  1. C/C++中的指针数组和数组指针
  2. php接口post提交方法 (改良版)
  3. PacketiX VPN搭建企业VPN
  4. 2016/12/14---- C3P0
  5. CentOS6开启FTP及telnet服务教程
  6. .NET高级工程师面试题之SQL篇
  7. swift 代码添加image
  8. Cannot assign to &#39;self&#39; outside of a method in the init family
  9. poj 2446 Chessboard (二分匹配)
  10. AngularJS学习--- 动画操作 (Applying Animations) ngAnimate step 12