博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
AngularJS之手动加载模块app和controller
阅读量:5843 次
发布时间:2019-06-18

本文共 945 字,大约阅读时间需要 3 分钟。

 

使用ng的页面中一般都是使用模块自动加载,页面的结构一般是这样的

  • 加载angularjs脚本
  • 加载业务代码脚本(或者写在script标签中)
  • html结构代码(带有ng指令)

就像这样

app.html

                                    

mypage.js

var app = angular.module("app", []);var ctrl = app.controller("ctrl", function ($scope, $http) {    $scope.Model = {        Name: "ABC"    };});

 

 大部分情况mypage.js只要在angularjs后面的任意位置都可以。

但是,如果mypage.js是异步加载的,例如script加上了 async,或者使用requirejs等模块化脚本,那么ng将会出错

 解决方法:

  1. 在业务代码后面给dom添加controller指令
  2. 使用angularjs的模块手动加载函数bootstrap

要注意的是,module和controller(即下面的app和ctrl)的定义 要在bootstrap执行之前

 

var app = angular.module("app", []);var ctrl = app.controller("ctrl", function ($scope, $http) {    $scope.UI = {        Model: {            NickName: "ABC",            Password: ""        }    };});

angular.bootstrap(document, ['app']);

angular.element(document).find('body').attr({ "ng-controller": "Ctrl" });
angular.element(document).find('html').addClass('ng-app');

 

转载于:https://www.cnblogs.com/TiestoRay/p/5007355.html

你可能感兴趣的文章
ubuntu 开启 apache mod_rewrite
查看>>
android EventBus 3.0 混淆配置
查看>>
数据库备份需要注意的
查看>>
判断点在多边形内
查看>>
程序报错与提示
查看>>
EXT.NET 更改lable和Text的颜色
查看>>
我的友情链接
查看>>
把文件放在SD卡
查看>>
postfix搭建及配置
查看>>
DNS区域委派与转发
查看>>
[deviceone开发]-一个很炫的手势动画示例
查看>>
Windows Server 2008 RemoteApp---发布应用程序
查看>>
编程之美3——N!末尾有多少个0
查看>>
IPC-----消息队列
查看>>
Spring Cloud Feign注意点
查看>>
Js中的for in
查看>>
白帽子技术分析会话劫持实战讲解
查看>>
好想写点儿什么,但是不知道怎么写
查看>>
互联网项目总结
查看>>
我的友情链接
查看>>