У меня есть HTML, который выглядит так:
<custom-logo>
<div>
<img src="logo.png">
</div>
<custom-logo-after>
</custom-logo-after>
</custom-logo>
Я пытаюсь выяснить, как я могу изменить директиву custom-logo в Angular JS, чтобы включить ссылку вокруг тега img
чтобы добавить динамический адрес ссылки в Angular JS.
Вы можете использовать ng-transclude для этого
.directive('customLogo', function() {
return {
transclude: true,
template: '<a href="http://www.google.com"><ng-transclude></ng-transclude></a>'
}
});
Вы можете сделать это, как эта Ссылка, чтобы возиться
angular.module('directives', []).directive('customLogo',
function() {
return {
restrict: 'E',
link: function($scope, element, attrs) {
var image = element.find('img');
image.attr("src","blabla.png");
}
};
}
);
angular.module('myApp', ['directives']);
<div ng-app="myApp">
<custom-logo>
<div>
<img src="logo.png">
</div>
</custom-logo>
</div>
обратите внимание, что "blabla.png" может быть ссылкой на ваш файл изображения в вашей области. поэтому, например, $scope.image = "src/images/blabla.png"
а затем замените
image.attr("src",$scope.image);