模块化设计

1.引用自定义模块并调用

自定义模块中,如果有一些服务、封装好笑模块,在另外一个模块中(声明的时候,在依赖列表中加入要引入的模块)

var app02 = angular.module('fan02',['ng','fan']);

就调用fan02模块中所定义的东西

2.ng内置的模块的用法

(1) ngRoute模块(路由模块)

AngularJS是一个开源的js框架。用在数据操作比较频繁的场景下,用于SPA应用

  单页面应用的工作原理:

1.页面url:http://127.0.0.1/index.html#/路由地址

2.浏览器首先解析基础页面index.html,再解析路由地址

3.查找路由词典,#/startàstart.html#/mainàmain.html

4.得到当前url中路由地址所对应的真实模板页面地址

5.发起ajax请求,获取目标模板页面,插入到当前的DOM树

  使用ngRoute来实现SPA的步骤

1.创建一个完整的HTML页面,引入angular.js、angular-route.js

2.创建自定义模块,在依赖列表中依赖ng,ngRoute

    

3.在index.html的body中声明一个容器(盛放代码片段)

实现方式:使用ngView指令声明一个容器

4.创建代码片段

5.配置路由词典

$routeProvider.when(‘/start’,{templateUrl:‘start.html’});

6.测试

    

  使用SPA,怎么实现页面间的跳转

1.修改地址栏中的路由地址

2.超链接

3.js

$location.path(‘路由地址’);

调用控制器的时候,有两种方式:

1.直接使用ng-controller=’’

2.在路由词典中,在对应路由地址的对象中添加controller属性:controller:’’;

如果多个控制器需要用到相同的变量或者方法,可以将它放在父元素所对应的控制器中;子元素是可以调用父元素中定义好的方法或者变量。(parentCtrl)

  SPA,如何实现带参数的模板页面间的跳转

1.分清发送方和接收方

发送方:’/start/200’

接收方:

2.配置接收方路由

.when('/myPay/:price',{templateUrl:'tpl/pay.html'})

3.发送

<a href='#/myPay/200'></a>

4.接收到参数

$routeParams.price

AngularJs学习笔记7——四大特性之模块化设计的更多相关文章

  1. AngularJs学习笔记2——四大特性之MVC

    angularJs的四大特性 ①.采用MVC的设计模式 ②.双向数据绑定 ③.依赖注入 ④.模块化设计 现在细说一下MVC的设计模式: MVC: Model(模型)--项目中的数据 View(视图)- ...

  2. AngularJs学习笔记6——四大特性之依赖注入

    压缩工具:YUI-compressor 为了优化网页功能,对一些脚本文件进行压缩,比如:删除所有的注释和空格等,简化形参.但是AngularJs模块中可以声明多种组件,如控制器.指令.过滤器.服务等. ...

  3. AngularJs学习笔记4——四大特性之双向数据绑定

    双向数据绑定 方向1:模型数据(model)绑定到视图(view) 实现方法:①.{{model变量名}}  ②.常用指令(ng-repeat) 方向2:将视图(view)中用户输入的数据绑定到模型数 ...

  4. AngularJs学习笔记--Forms

    原版地址:http://code.angularjs.org/1.0.2/docs/guide/forms 控件(input.select.textarea)是用户输入数据的一种方式.Form(表单) ...

  5. AngularJs学习笔记--concepts(概念)

    原版地址:http://code.angularjs.org/1.0.2/docs/guide/concepts 继续.. 一.总括 本文主要是angular组件(components)的概览,并说明 ...

  6. AngularJS学习笔记2——AngularJS的初始化

    本文主要介绍AngularJS的自动初始化以及在必要的适合如何手动初始化. Angular <script> Tag 下面通过一小段代码来介绍推荐的自动初始化过程: <!doctyp ...

  7. AngularJs学习笔记--Using $location

    原版地址:http://code.angularjs.org/1.0.2/docs/guide/dev_guide.services.$location 一.What does it do? $loc ...

  8. AngularJs学习笔记--Injecting Services Into Controllers

    原版地址:http://docs.angularjs.org/guide/dev_guide.services.injecting_controllers 把service当作被依赖的资源加载到con ...

  9. AngularJs学习笔记--I18n/L10n

    原版地址:http://code.angularjs.org/1.0.2/docs/guide/i18n 一.I18n and L10n in AngularJS 1. 什么是I18n和L10n? 国 ...

随机推荐

  1. 图片样式 scaleType 属性

    ImageView的属性android:scaleType,即ImageView.setScaleType(ImageView.ScaleType),不同值的意义区别:

  2. ASP.NET-FineUI开发实践-4(二)

    在网上找了找,实验了一下window弹出和关闭的动画效果分享一下. 接上次的代码 default.js window_tips.animCollapse= true;//打开动画效果 window_t ...

  3. oracle、db2、sybase大型数据库面试总结

    1. oracle数据库单例.多例模式. 数据库创建之后会有一系列为该数据库提供服务的内存空间和后台进程,称为该数据库的实例. 每一个数据库至少会有一个实例为其服务. 2. mysql获取字段的长度用 ...

  4. ImageView设置点击效果没有用?ImageView src的图片大小改变不了?

    ImageView设置点击效果没有用? 解决 1.ImageView xml里面必须clickable 和longClickable为true <ImageView android:layout ...

  5. MySQL慢查询详解

    分析MySQL语句查询性能的方法除了使用 EXPLAIN 输出执行计划,还可以让MySQL记录下查询超过指定时间的语句,我们将超过指定时间的SQL语句查询称为“慢查询”.   查看/设置“慢查询”的时 ...

  6. 网络编程 socket-实例

    1.设计界面:   2.效果界面:   3.具体实现代码:   public partial class frmMain : Form { public frmMain() { InitializeC ...

  7. PHP 异常处理

    PHP 异常处理 异常用于在指定的错误发生时改变脚本的正常流程. 异常是什么 PHP 5 提供了一种新的面向对象的错误处理方法. 异常处理用于在指定的错误(异常)情况发生时改变脚本的正常流程.这种情况 ...

  8. C#数组的使用

    //计算数组中最大值,最小值,平均值和总和 //类中main最先执行 static void Main(string[] args) { //声明一个数组,数组长度一定固定就不能更改了 , , , , ...

  9. union关键字 与大小端模式

    union 关键字(主要用来压缩空间,如果一些数据不可能同一时间同时用到,可是考虑使用union) union关键字声明的变量称之为联合体变量: (1)联合体变量只配置一个足够大的空间来容纳最大长度的 ...

  10. thinkphp3.23整合phpexcel

    HINKPHP3.2.3整合PHPexcel实现数据的导入导出.可以上传excel文件后批量导入到数据库,兼容.xls和.xlsx格式:数据库里的数据可以按照搜索条件和分页导出为excel文件.最近接 ...