在用angular依賴注入時,感覺很好用,他的出現(xiàn)是 為了“削減計算機(jī)程序的耦合問題” ,我懷著敬畏與好奇的心情,輕輕的走進(jìn)了angular源碼,看看他到底是怎么實(shí)現(xiàn)的,我也想寫個這么牛逼的功能。于是就模仿著寫了一個,如果有什么不對,請大家批評指正。
其實(shí)剛開始的時候我也不知道怎么下手,源碼中有些確實(shí)晦澀難懂,到現(xiàn)在我也沒有看明白,于是我就靜下心想一想,他是怎么用的,如下所示:
1 angular.module(/*省略*/) 2 .factory("xxxService", ['xx',function (xx) { 3 return { 4 //省略 5 } 6 }]) 7 .controller('iiController',['xxxService',function(xxxService){ 8 //省略 9 }]); 10 /*...方法省略..*/
看看上面嚴(yán)格模式下的使用方式,先不去看源碼,如何實(shí)現(xiàn)service重用,controller不重用呢? 我就按照自己的想法創(chuàng)建一個cache用于保存service,controller 只運(yùn)行一次,不保存到cache中。
有了點(diǎn)思路,就把該有的東西先寫了,