AngularJS学习笔记(四)

这部分讲原理部分,主要是分析angular.js的源代码,蛮有意思的,也很重要,深入理解原理,哈哈,知其然还要知其所以然,知其所以然,才能更好的知其然。

几个tips:

  • $scope是个树形结构
  • 看源代码——debug
  • 此bootstrap非彼bootstrap
  • return 语句可以放在前面

1.启动~
主要看angular.js文件的最后面
用自执行函数的形式让整个代码在加载完成后立即执行

下面是几个需要探索的:
window.angular
angular.injector
angular.module
angular.element(document)
angular.element = jqLite
window.angular.bootstrap(是否多次启动)
bindjQuery();(jqlite)
extend()

  • 启动是自启动(ng-app),我们也可以通过在angular.js里面增加代码手动启动。
  • 发布ng提供的API,publishExternalAPI()
  • setupModuleLoader(window)——建立模块机制 注册内核provider
  • angularInit()——防止多次初始化ng-app
  • bootstrap——创建injector、拉起内核和启动模块,调用compile服务

2.注入

  • 推断型注入(混淆之后名称都会改,就没有办法了)
  • 声明式注入
  • 内联式注入(推荐)

创建注射器(provider,instance)
$injector.invoke()
$injector.annotate()——分析函数参数的
function 的 toString();

核心目的:让接口和实现分离

在ng中,所有的provider都可以用来进行注入

provider/factory/service/constant/value
provider是基础,其余都是调用provider函数实现的,只是参数不同
从坐向右,灵活性越来越差

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值