在用angular依賴注入時(shí),感覺很好用,他的出現(xiàn)是 為了“削減計(jì)算機(jī)程序的耦合問題” ,我懷著敬畏與好奇的心情,輕輕的走進(jìn)了angular源碼,看看他到底是怎么實(shí)現(xiàn)的,我也想寫個(gè)這么牛逼的功能。于是就模仿著寫了一個(gè),如果有什么不對(duì),請(qǐng)大家批評(píng)指正。
其實(shí)剛開始的時(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)建一個(gè)cache用于保存service,controller 只運(yùn)行一次,不保存到cache中。
有了點(diǎn)思路,就把該有的東西先寫了,
延伸閱讀
學(xué)習(xí)是年輕人改變自己的最好方式