在实践中,发现如果一个页面有多个ng-app,angular只会处理第一个ng-app
相关问题:
单个angular页面能否有两个ng-app 开源中国社区
http://stackoverflow.com/questions/18571301/angularjs-multiple-ng-app-within-a-page
问题重现:
- 锐客网
运行后只会输出:
Hello angular
解决办法:
使用
angular.bootstrap
手动将第二个ng-app加入控制: 在,js代码最后加上一句:
angular.bootstrap($("dir"),['dir']);
【解决angular单个页面只能加载一个ng-app的问题】当然,在第二个ng-app接管的div上要加一个id属性dir并且去掉第二个ng-app。
所以最终两个ng-app能同时存在于一个页面的完整示例代码是:
- 锐客网
对于angular.bootstrap的一点探讨:
1.使用ng-app,页面加载时会这样处理:
- angular找到ng-app标记后,首先加载与module相关的directive
- 创建应用相关的injector(依赖管理器)
- 开始对ng-app为根节点的DOM“编译”
推荐阅读
- Angular实现的增删改查
- angular版本更新与配置文件问题
- 登录的实现
- ng : 无法加载文件 C:\Users\Administrator\AppData\Roaming\npm\ng.ps1,因为在此系统上禁止运行脚本。
- Angular 变化检测详解
- angualr|angular规范
- Angular重要概念
- 微前端( Single-SPA框架)