【发布时间】:2016-10-14 23:06:25
【问题描述】:
我目前正在尝试在现有应用程序上实现 Browserify。
我有一个要求,我有一个包含一堆标准功能的 BaseService,例如在请求等上设置标准标头。
在我的工厂中,我使用 loadash 来扩展 BaseService。为此,我需要在任何试图扩展它的工厂中引用 BaseService 。现在我已经开始使用browserify,我不知道如何通过这个依赖。
我在下面添加了示例代码。
模块声明:
'use strict';
var angular = require('angular');
module.exports = angular.module('todoApp.services', [require('../secure').name])
.factory('AuthService', ['$q', 'ConsumerConfig', require('./auth-service')])
.factory('BaseWebService', ['$http', '$q', 'Encryption', 'nativeCrypto', require('./base-web-service')]);
AuthService:
'use strict';
var _ = require('lodash');
module.exports = function($q, ConsumerConfig) {
return _.extend({
config: ConsumerConfig,
authenticate: function (options) {
var deferred = $q.defer();
this.callService({
user: options.user,
url: "/AuthenticateUser",
type: "GET"
}).then(function (response) {
deferred.resolve(response.data.userAuthResponse.responseMessage.Token);
}, function (error) {
deferred.reject(error);
});
return deferred.promise;
}
}, BaseWebService);
};
理想情况下,我希望使用 DI 来注入依赖项,但是当我尝试这样做时,我不断收到未知的提供程序错误。有谁知道我怎样才能让它工作?
【问题讨论】:
标签: angularjs dependency-injection browserify factory