У меня есть решение, работающее над моим маршрутизатором, но я просто верну обещание, поэтому я не знаю, был ли его успех или неудача. Это то, что у меня есть
.when('/items', {
templateUrl: 'views/items.html',
controller: 'ItemsCtrl',
resolve: {
resolvedData: function(Restangular) {
return Restangular.one('Items').get();
}
}
})
Теперь это работает, но как я могу определить успех или неудачу... Я мог бы ввести это в метод разрешения, но что бы я вернулся в успех и неудачу... Помня, что мне нужно, чтобы элемент был введен в мою контроллер.
.when('/items', {
templateUrl: 'views/items.html',
controller: 'ItemsCtrl',
resolve: {
resolvedData: function(Restangular) {
Restangular.one('Items').get().then(function(data) {
// success
}, function() {
// failure
});
}
}
})
Я видел пример здесь, но я смущен, если это то, что мне нужно и как его использовать?
AngularJS - отклонено обещание $http с $routeProvider: разрешить
Кажется, он возвращает обещание руководства.
resolve: {
response: ['Warranty'
'$q',
function(Warranty, $q) {
var dfd = $q.defer();
Warranty.sendRequest().then(function(result) {
dfd.resolve({
success: true,
result: result
});
}, function(error) {
dfd.resolve({
success: false,
reason: error
});
});
return dfd.promise;
}
]
}
Я бы очень признателен за любую помощь, которую кто-либо имеет.
Что я действительно хочу сделать, так это то, что в моем контроллере есть разрешенная переменная, введенная в контроллер, если она терпит неудачу, то я также хотел бы получить доступ к сбою в контроллере, чтобы я мог показать пользователю, что он был " возможно сделать из-за проблемы.