通常服務被注入控制器。如何將控制器注入服務?
controller.js
angular
.module('myApp')
.factory('myService', function($http){
var myService = {
get: get
};
return myService;
function get(){
// Get function.
}
});
service.js
但它有可能扭轉的方式嗎?將控制器注入到服務?
你爲什麼要?我不知道這會有什麼用處。 –
使用角度材料'mdDialog'我想要一個乾淨的控制器結構。基本上''mdDialog'在ctrl1中被調用,並且'mdDialog'模板的控制器在'ctrl1'的同一個控制器中,我希望爲'mdDialog'提供的控制器在不同的文件中,所以我想把服務中的mdDialog,以便其他控制器可以使用它。這將有助於我有效地重用代碼。 –
不是在服務中注入控制器,而是將控制器中的功能導出到其他服務併爲其注入服務。例如,如果控制器C具有功能A並且您想要注入服務S.那麼,將功能A導出到ServiceA,然後在S中注入ServiceA。 – Dimitri