У меня есть этот код:Binding атрибут HTML в angularjs
<span data-icon="{{table.addIcon || ''}}"></span>
Этот промежуток создает значок, как это:
Однако я хочу, чтобы дать разработчику, используя эту директиву, то возможность определить новый значок. Это работает, однако, проблема у меня есть, что, предполагая, что у меня есть это:
$scope.table.addIcon = ""
Вместо создания элемента
<span data-icon=""></span>
создаст его
<span data-icon="&#xe070;"></span>
Что будет не удается добавить значок, поэтому вместо этого:
Что у меня есть это:
Есть ли способ, чтобы избежать угловатых преобразовать &
в &
?
добавления раствора
Благодаря miensol решения заключается в следующем:
.directive("changeIcon", function() {
var d = document.createElement("div");
return {
restrict: "A",
link: function($scope, $ele, $attrs) {
log($attrs);
var originalIcon;
$scope.decodedIcon = $attrs.icon;
do {
originalIcon = $scope.decodedIcon;
d.innerHTML = originalIcon;
$scope.decodedIcon = d.firstChild.nodeValue;
} while (originalIcon != $scope.decodedIcon);
$attrs.$set('data-icon', $scope.decodedIcon);
}
}
})
И он используется так:
<span change-icon icon="{{table.addIcon || ''}}"></span>
Большое спасибо за информацию. Собственно, если вы проверите первый jsfiddle, вы увидите, что он закодирован, а второй делает именно то, что мне нужно. Я попробую. Благодаря! – Cito