Я хочу получить данные ресурсов с сервера и передать их модальным.
Но я получаю ошибку неопределенной.
Я думаю, что модальный выполняется без ожидания данных, пожалуйста, помогите мне решить эту проблему.
Я использую следующий код:
controller1
$aside.open({
templateUrl: 'js/view/aside.html',
placement: position,
size: 'md',
backdrop: true,
controller: 'asidereport',
resolve: {
cookies: getPreData
}
}).result.then(postClose, postClose);
}
GetParamsService.get({
token: "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyaWQiOiI1NzhlMDMzMmRjM2EwZDhjMTFiZmI5ZDgiLCJkYXRlIjoxNDY5NTI0MjcwODkxfQ.iAd6z8afajxwWPM6UDF6mHzjlrn4eqR42XW1HhZjB7Q",
}, function(err, data) {
if (err) {
console.log(err);
return err;
}
var res = data.data;
console.log(data);
return res;
});
завод
Myapp.factory('GetParamsService', function($resource) {
return $resource('http://localhost:8000/v1/admin/filter_report', {}, {
get: {
method: 'GET'
}
});
});
простой способ сделать это - дождаться данных перед открытием модального:
GetParamsService.get({token: 'yourToken',}, function(err, data) {
if (err) {
console.log(err);
return err;
}
var res = data.data;
$aside.open({
templateUrl: 'js/view/aside.html',
placement: position,
size: 'md',
backdrop: true,
controller: 'asidereport',
resolve: {
cookies: res
}
}).result.then(postClose, postClose);
});
Потому что GetParamsService.get обещает. Вы должны поместить функцию open modal в функцию обратного вызова GetParamsService.
GetParamsService.get({
token:"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyaWQiOiI1NzhlMDMzMmRjM2EwZDhjMTFiZmI5ZDgiLCJkYXRlIjoxNDY5NTI0MjcwODkxfQ.iAd6z8afajxwWPM6UDF6mHzjlrn4eqR42XW1HhZjB7Q"}, function(err, data) {
if (err) {
console.log(err);
return err;
}
var res = data.data;
console.log(data);
$aside.open({
templateUrl: 'js/view/aside.html',
placement: position,
size: 'md',
backdrop: true,
controller: 'asidereport',
resolve: {
cookies: function() {return res;}
}
}).result.then(postClose, postClose);
}
});