2013-09-04 7 views
28

में किसी अन्य मॉड्यूल में परिभाषित फैक्ट्री तक पहुंचने से हम किसी मॉड्यूल में किसी मॉड्यूल में परिभाषित फैक्ट्री फ़ंक्शंस को कॉल कर सकते हैं? यदि हां, तो कैसे?angularjs

मान लीजिए कि मेरी पहली मॉड्यूल के रूप में moduleOne.js फ़ाइल में परिभाषित किया गया है दो:

var myModuleTwo = angular.module('MyServiceModuleTwo', []); 
myModuleTwo.factory('notifytwo', function() { 
    return { 
     sampleFunTwo: function() { 
      // code 
     }, 
    }; 
}); 

कैसे sampleFun() से sampleFunTwo() कॉल करने के लिए:

var myModule = angular.module('MyServiceModuleOne', []); 
myModule.factory('notify', function() { 
    return { 
     sampleFun: function() { 
      // some code to call sampleFunTwo() 
     }, 
    }; 
}); 

और moduleTwo.js के रूप में मेरी दूसरी मॉड्यूल?

धन्यवाद।

उत्तर

44

आप की जरूरत इंजेक्षनMyServiceModuleTwoMyServiceModule में:

var myModuleTwo= angular.module('MyServiceModuleTwo',[]); 
var myModule= angular.module('MyServiceModuleOne', ['MyServiceModuleTwo']); 

फिर इंजेक्षनnotifytwonotify में:

myModule.factory('notify', function(notifytwo) { 
    return { 
     sampleFun: function() { 
      notifytwo.sampleFunTwo(); 
     }  
    }; 
}); 


myModuleTwo.factory('notifytwo', function() { 
    return { 
     sampleFunTwo: function() { 
      alert('From notify two'); 
     }  
    }; 
}); 

और plunker

+6

पर कोड क्या होगा अगर दोनों मॉड्यूल पहले से ही कर रहे हैं इंज मुख्य मॉड्यूल पर ected? – Manatax