這篇博客其實是angular源碼閱讀之路的一個必經(jīng)站點,就是要理解injector,provider,module之間的關系——這關系其實就是依賴注入的本質。
那么請專注地看下面這一段話吧:
通俗一點的理解:
module是發(fā)布任務的BOSS。
injector是領取任務的中間人。
provider是真正去執(zhí)行任務的馬仔。
當然上面這一段話只是比喻,不太嚴謹,可是很形象。待我慢慢解釋來。
如果你比較熟悉angular,那么你肯定知道在每一個module對象上,都有一個私有屬性"_invokeQueue"。
這個_invokeQueue,其實就是module發(fā)布的任務。
怎么理解『_invokeQueue,其實就是module發(fā)布的任務?!贿@句話呢?請看下面的簡單小代碼。
當我執(zhí)行下面這段語句,我會在myapp中創(chuàng)建一個全局變量name='不咬人的蚊子':
延伸閱讀
我想了解如何學習 |