码迷,mamicode.com
首页 > 其他好文 > 详细

Angular的依赖注入(依赖反转)原理说明

时间:2018-01-15 00:27:16      阅读:182      评论:0      收藏:0      [点我收藏+]

标签:意思   control   想法   test   简单的   匹配   col   let   color   

依赖注入(依赖反转)意思是由函数决定要引入什么样的依赖:

let mod = angular.module(‘test‘,[]);
mod.controller(‘test_c‘,function($scope,$interval){
    //这里就引入两个依赖$scope和$interval
})

//神奇的是我所引入的依赖不受顺序、个数影响
//下面运用这些依赖的时候仍然杠杠的
mod.controller(‘test_c2‘,function($interval,$http,$scope){

})

这里就不得不佩服Angular作者的想法了,正常来说在js里面,我们可怜的函数只能被动地接受参数,甚至不知道自己能得到多少参数,什么类型的参数,这也是js天然的“烂语法”导致,我们聪明的作者就用一种挺简单的方法实现了依赖反转,由我们的函数来决定要什么依赖。

核心原理就是利用function的toString方法:

(function myFunction($scope,$interval){}).toString();//"function myFunction($scope,$interval){}"

这里明显可以用各种正则来匹配到我们形式参数了,匹配完之后controller在调用我们传入的函数的时候就按部就班地按照匹配到的形参,按照类别顺序依次个传入,完事~~

Angular的依赖注入(依赖反转)原理说明

标签:意思   control   想法   test   简单的   匹配   col   let   color   

原文地址:https://www.cnblogs.com/amiezhang/p/8284575.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!