想寫一個全域的工具類,我在獨立的js檔案中聲明ng service(並載入到html)
(function(angular){
"use strict";
angular.module('testModule',function(){
return {
test : function(){
console.info('testModule is ready!');
}
}
});
})(window.angular);
然後想在appmodule的controller裡面注入testModule
,但提示注入失敗
var mainApp = angular.module('mainApp',[]);
mainApp.controller('homeController',['testModule',function(testModule){
testModule.test();
}]);
"Error: [$injector:unpr] Unknown provider: testModuleProvider
謝邀,你寫的只對了30%。這裡涉及兩個話題:
1、不同module
angular.module('testModule')
和angular.module('mainApp',[])
是两个不同的module,你想要在mainApp
中使用testModule
,那么你需要在angular.module('mainApp', [ 'testModule' ])
導入這種相依性。2、全域工具類別的寫法不正確
上面有人回答了:
在使用時,可以:
以上程式碼未經驗證,結構上應該沒有什麼問題,請自行除錯解決。
把你的service定義成一個module就可以了,例如: