angular消息通讯方式总结

1. scope.$emit只能向parent controller传递 event与data

2. scope.$broadcast只能向child controller传递event与data

3. scope.$on用于接收event与data

4. 数据绑定

  1. 双向绑定
    angular中双向绑定指的是视图(view)和模型(model)之间的特性。能进能出:当数据变化时,视图同时变化。当视图变化时(由用户交互改变或程序控制改变等),数据同时变化。
  2. 依赖注入
    普通js中,函数的参数是由调用决定的,而不是函数定义决定。
    angular中,参数是由定义决定,而不是调用者(这里所说的参数就是注入项 )
// 指令directive
	<div ng-app="hd>
		<div hd-cms color="red"></div>
	</div>

var m = angular.module('hd',[])
m.directive('hdCms',[function(){//指令名最好加上自己的前缀,方便和其他区分
	return {
		restrict:"AE",//指令使用方式
		template:"模板内容",//指令内容模板
		template:function(elem,attr){//elem指hd-cms那个标签,attr指它上面的属性,如color
			
		}
	}
}])
  1. controller
    子控制器会继承父控制器的scope,
    当为简单数据类型值时,继承隔离
    当为复杂数据类型值时,继承不隔离
    tips:
    可以通过把数据保存在父对象中来实现继承不隔离。

5. 基础概念总结

  1. html页面加载完毕,开始加载js,css。加载的angularjs脚本等资源加载完毕时,开始寻找ng-app指令并引导整个引用,根据依赖注入列表加载依赖模块,连接整个应用,等待用户交互事件并相应。
  2. rootscope是ng-app的上下文,
    每个controller的scope继承自rootscope,
    controller中的repeater生成的每个重复项的scope继承自该controller的scope.
  3. angular的MVC设计结构,mode提供数据,view是视图(controller和template生成的),controller是控制逻辑。
  4. component让angular代码松耦合,实现复用。每个component实例都有自己的独立作用域(isolate scope),每个组件不再继承自rootscope,组建的controller中推荐使用this绑定值,使用时用$ctrl.phones等
  5. 代码组织:
    (1)每个实体一个文件
    (2)根据功能区域组织代码
    (3)划分成不同的module,然后依赖。
    注:
    app/
    phone-list/
    phone-list.module.js
    phone-list.component.spec.js
    phone-list.component.js
    phone-list.template.html
    app.css
    app.module.js
    index.html
  6. filter过滤器将会新建一个仅仅符合条件的数组,然后repeat出来。
  7. $http获取数据。
  8. injector做的事情:
    (1)加载所有的模块定义
    (2)根据第一步加载的模块定义,注册所有模块的provider
    (3)当请求时,懒实例化服务和他们的依赖项,通过9.
  9. 注意:
    provider,作为参数注入到函数中。
    $resource代替$http
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值