スニペット 1 は機能しません。エラーが表示されます: [$injector:unpr] 不明なプロバイダー: $q
/* Snippet 1*/
var mApp = angular.module('MyApp',[]);
mApp.provider('authProvider', ['$q', function($q) {
this.$get = function(){
authProvider = {};
authProvider.Title = function(){
var deferred = $q.defer();
deferred.resolve("promise resolved");
return deferred.promise;
}
return authProvider;
}
}]);
ただし、スニペット 2 は機能します。私はなぜそれが混乱しているのですか?私が読んだすべてのファクトリーサンプルコードは、.factory('MyFactory',[$q,function($q) {}]); のような最初の行に依存関係を挿入します。上記のプロバイダー コードでそのスタイルが機能しないのはなぜですか? また、なぜ $q を GET 宣言の下に挿入しているのに、TITLE 宣言の下に挿入していないのですか。
/* Snippet 2*/
mApp.provider('authProvider', function() {
this.$get = function($q){
authProvider = {};
authProvider.Title = function(){
var deferred = $q.defer();
deferred.resolve("promise resolved");
return deferred.promise;
}
return authProvider;
}
});
助けてください!!!
(コードは今のところ何もしません。構文を学ぼうとしているだけです)