У меня на самом деле возникают проблемы с получением данных с моего завода.Вызов атрибута с завода в Angular
.factory('Spooler', ['$http', '$q', '$log', 'Domains', function ($http, $q, $log, Domains) {
var Spooler = function (id) {
this.id = id;
this.name = null;
};
Spooler.prototype.load = function() {
var self = this;
var deferred = $q.defer();
$http.post('/spooler/' + this.id + '/load')
.success(function(data) {
self.name = data.name;
deferred.resolve(self);
})
.error(function(err, code) {
deferred.reject(err);
$log.error(err, code);
});
return deferred.promise;
};
Это устанавливает завод, так что я могу назвать: var spooler = new Spooler(1)
, который возвращает шпульницу (я могу прочитать доброе имя я NThe журналы контроллера). Мой вопрос: как я могу получить доступ к атрибуту name? Я сделал еще один метод на заводе:
Spooler.prototype.getName = function() {
return this.name;
}
Почему я не могу просто позвонить spooler.name
? поскольку спулер возвращает имя в controller
?
Ваш завод более похож сервис. – Ved