Я очень (очень) новичок в AngularJS, поэтому, если вы можете объяснить, какие решения и предложения помогут вам загружать грузы!Угловая | Исходная ошибка: championURL не определен
Я пытаюсь сделать директиву, которая передается параметр - в моем случае championID, чтобы затем использовать для вызова API.
Вызов API работает и возвращает правильные данные, единственная проблема, с которой я сталкиваюсь, - это попытаться поместить это в шаблон и вернуть его.
Сообщение об ошибке я получаю
Reference error: championURL is not defined
моя директива ниже:
.directive('championImage', function() {
return {
restrict: 'E',
link: function($scope, iElm, iAttrs, controller) {
$scope.championId = iAttrs.championId;
$http.get('https://global.api.pvp.net/api/lol/static-data/euw/v1.2/champion/'+ championId +'?champData=image&api_key=<removed for stack overflow>').success(function(data){
$scope.championURL = '<img src="http://ddragon.leagueoflegends.com/cdn/5.22.3/img/champion/'+ data.image.sprite +'"/>';
}).error(function(data){
console.warn('Incorrect username entered or max queries hit');
});
},
template: championURL
};
});
Любые идеи, где я неправильно,
Спасибо,
Kieran
это возвращает '$ scope не определено' – Kieranmv95
У вас нет определения $ scope в определении директивы, только внутри функции ссылки. –
«Директивы, которые хотят изменить DOM, как правило, используют ссылку для регистрации DOM-прослушивателей, а также для обновления DOM. Он выполняется после клонирования шаблона и где будет установлена директивная логика». Итак, сначала будет загружен ваш шаблон, а затем функция связи. –