AngularJs(七) 模块的创建
module
目前我选编写的都是在AngularJs-1.5版本,如有疑问可以联系我。
理解模块的生命周期。
config 和 run 方法是模块调用时加载的方法。那么module的执行顺序是怎么样呢。
config方法是在module 被加载后调用的方法。run 方法是在所有的模块都被加载后调用的方法。
- <!DOCTYPE html>
- <html xmlns="http://www.w3.org/1999/xhtml" ng-app="exampleApp">
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
- <title>Cycle</title>
- <script src="angular.js"></script>
- <link href="bootstrap-theme.css" rel="stylesheet" />
- <link href="bootstrap.css" rel="stylesheet" />
- <script>
- var app = angular.module("exampleApp", ["exampleApp.Services"]);
- app.constant("startTime", new Date().toLocaleDateString());
- app.config(function (startTime) {
- console.log("Main Module config:" + startTime);
- });
- app.run(function (startTime) {
- console.log("Main module run:" + startTime);
- });
- var now = new Date();
- app.value("nowValue", now);
- angular.module("exampleApp.Services", [])
- .service("days", function (nowValue) {
- this.today = nowValue.getDay();
- this.tomorrow = this.today + 1;
- })
- .config(function () {
- console.log("Services module config:" + "(no time)");
- })
- .run(function (startTime) {
- console.log("Services module run:" + startTime);
- });
- </script>
- </head>
- <body >
- </body>
- </html>
运行结果:
创建
- var app = angular.module("exampleApp", ["exampleApp.Services"]);
- <html xmlns="http://www.w3.org/1999/xhtml" ng-app="exampleApp">
module 函数包含三个参数(name,requires,config);
name:表示需要创建模块的名字如:exampleApp;
requires:表示创建时所依赖的模块的名字。
config:表示注册模块回调的函数。//相当于 app.config();
- var app = angular.module("exampleApp", ["exampleApp.Services"], function (startTime) {
- console.log("Main Module config:" + startTime);
- });
引用
- var app = angular.module("exampleApp");
上面的表示,exampleApp 的module已被创建,当出现这句代码,AngularJs就会查找该模块。
summary
在使用模块时,AngularJs保证了主模块所依赖的模块的回调函数先解析。由于run方法是在所有的模块都加载后才执行的。所有,当依赖模块的config解析之后,等到所有的模块都被加载,在执行依赖的run方法,最后是主模块的run方法。
AngularJs(七) 模块的创建的更多相关文章
- 10天学会phpWeChat——第七天:创建一个自适应PC网站+H5移动端的模块
本教程基于phpWeChat核心框架1.1.0+版本.下载地址:http://s.phpwechat.com/app_38026ed22fc1a91d92b5d2ef93540f20 通过前面六讲的系 ...
- AngularJS进阶(四十)创建模块、服务
AngularJS进阶(四十)创建模块.服务 学习要点 使用模块构架应用 创建和使用服务 为什么要使用和创建服务与模块? 服务允许你打包可重用的功能,使之能在此应用中使用. 模块允许你打包可重用的功能 ...
- AngularJs(八) 过滤器filter创建
大纲 示例 过滤器的使用 创建过滤器 demo 这是整个示例demo 1.filter.js文件 angular.module("exampleApp", []) .constan ...
- AngularJS -- Module (模块)
点击查看AngularJS系列目录 转载请注明出处:http://www.cnblogs.com/leosx/ 什么是AngularJS的模块 我们所说的模块,是你的AngularJS应用程序的一个组 ...
- AngularJS:模块
ylbtech-AngularJS:模块 1.返回顶部 1. AngularJS 模块 模块定义了一个应用程序. 模块是应用程序中不同部分的容器. 模块是应用控制器的容器. 控制器通常属于一个模块. ...
- 03、AngularJs的模块与控制器
大部分的应用程序都有一个主方法(main)来组织,实例化,启动应用程序.而AngularJs应用是没有主方法的,它是通过模块来声明应用应该如何启动的.同时,模块允许声明来描述应用中依赖关系,以及如何进 ...
- Angularjs 异步模块加载项目模板
ng-lazy-module-seed(Angularjs 异步模块加载项目模板) 相信做过SPA项目的朋友都遇到过这个问题:页面初始化时需要加载文件太大或太多了,许多文件加载后很可能不会运行到,这是 ...
- Drupal8开发教程:模块开发——创建新页面
之前我们已经通过<Drupal8开发教程:认识.info.yml文件>对模块的YAML文件有了了解,今天我们来看如何通过模块开发的方式添加一个新的页面. 在 Drupal 7 中,通过模块 ...
- 从头开始编写一个Orchard网上商店模块(6) - 创建购物车服务和控制器
原文地址: http://skywalkersoftwaredevelopment.net/blog/writing-an-orchard-webshop-module-from-scratch-pa ...
随机推荐
- FPGA的SPI从机模块实现
一. SPI总线协议 SPI(Serial Peripheral Interface)接口,中文为串行外设接口.它只需要3根线或4根线即可完成通信工作(这里讨论4根线的情况). ...
- phpadmin
一晚上都在调试数据库,都要疯了,整理如下: 0.Apache服务器的443端口与VMware的冲突,所以要更改配置文件.设为440就可以(这个随意). 1.因为要远程访问,默认密码为空,所以首先给ro ...
- 开发SCM系统笔记001
使用EasyUI分页问题: 1.在分页界面没有显示声明分页属性名称,系统如何获取? EasyUI会向后台发送page\rows两个参数. 2.在配置sql参数时,parametertype与param ...
- 警惕:利用Dropbox链接散播的恶意软件
趋势科技近期发现好几起利用热门文档代管服务Dropbox的垃圾邮件.邮件的内嵌链接会下载UPATRE恶意软件变种.UPATRE下面载恶意软件而恶名昭彰,当中包含ZBOT恶意软件.CryptoLocke ...
- BS常用方法备忘
在B/S项目开发过程中总结的一些常用方法,如:常量.验证方法.服务器控件方法.html控件方法等. ///******************* 说明 ************************ ...
- Windows计算器使用详解
(1)Backspace:退格,删除当前输入数字中的最后一位 (2)CE:清除,清除显示的数字. (3)C:归零,清除当前的计算. (4)MC:清除存储器中的数值. (5)MR:将存于存储器中的数显示 ...
- unity3d在Android端读取修改Json数据
首先我们需要下载一个文件 LitJson.dll(下载链接 ps: 是用自己的百度云盘下载的如果链接过时,请留言或自行下载, 密码: 5foa) 另外,由于我们要发布到安卓手机上,所以需要配置Jar和 ...
- Gson解析JsonObject和JsonArray
Gson中重要的几个核心类: Gson.JsonParser.JsonObject.JsonArray. 下面就是解析的步骤: public void parserJsonArray(String s ...
- jsp中添加弹窗口并且实现向后台双向传递数据
思路:使用jquery-easyui框架实现弹出div,在jsp初始化时从后台获得数据初始化div中的form表单元素的value属性,从而获得后台数据.在点击确定按钮时使用ajax向后台发送数据. ...
- 菜鸟的jQuery源码学习笔记(三)
each: function(callback, args) { return jQuery.each(this, callback, args); }, each:这个调用了jQuery.each方 ...