У меня есть этот код:defer.promise распечатывания объекта и не данные
app.factory('loadDependencies', function ($q, $timeout) {
return {
load: function() {
console.log("start 1");
var defer = $q.defer();
$timeout(function() {
defer.resolve({ resolve: "got dependencies" });
}, 3000);
return defer.promise;
}
}
});
Но проблема в том, что defer.promise не ждать, пока время ожидания не заканчивается, и это также просто распечатать объект properteis и а не данные, распечатывается:
Object { then: qFactory/defer/deferred.promise.then(), catch: qFactory/defer/deferred.promise.catch(), finally: qFactory/defer/deferred.promise.finally() }
Я новичок в угловой и пытаюсь понять, что я сделал не так?
редактировать
Некоторые подробнее о том, что я пытался сделать.
У меня есть решение в пути, которое должно динамически загружать контроллеры и файлы css.
.when('/url', {
templateUrl: 'someview',
controller: 'somecontroller',
resolve: {
load: function (loadDependencies) {
loadDependencies.load(); // here i need to know get the result of what's inside $timeout of 'load'
}
}
})
Как вы можете видеть в своем собственном примере, вы возвращаете обещание. То, что вы получаете, - это ожидаемое обещание, которое будет разрешено через 3 секунды. – cbass
Есть ли способ отложить возврат до тех пор, пока не будет разрешено обещание? – emc
Зачем вам. В чем его цель? – cbass