Я пытаюсь добавить шаблон динамически в мою угловую директиву. Я использовал функцию ссылки для компиляции переменной в элемент html, как указано в этом answer.Добавление шаблона динамически в директиве
Но я не могу заставить его работать.
Это мой HTML:
<spinners></spinners>
Это моя директива:
app.directive('spinners', function() {
return {
restrict: 'E',
link: function(scope, element, attrs) {
var spinkit = ["<rotating-plane-spinner></rotating-plane-spinner>", "<double-bounce-spinner></double-bounce-spinner>", "<wave-spinner></wave-spinner>", "<wandering-cubes-spinner></wandering-cubes-spinner>", "<pulse-spinner></pulse-spinner>", "<chasing-dots-spinner></chasing-dots-spinner>", "<circle-spinner></circle-spinner>", "<three-bounce-spinner></three-bounce-spinner>", "<cube-grid-spinner></cube-grid-spinner>", "<word-press-spinner></word-press-spinner>", "<fading-circle-spinner></fading-circle-spinner>"];
var spinner = spinkit[Math.floor(Math.random() * spinkit.length)];
var el = angular.element(spinner);
compile(el.contents())(scope);
element.replaceWith(el);
}
};
});
На самом деле я делаю использование Angular-SpinKit для отображения блесны случайно в моей странице загрузки. Когда я использую одну директиву spinkit напрямую, она работает. Но когда я использую вышеуказанный метод, я не мог найти что-либо на моей странице html.
компиляции не будет работать именно так я думаю. Вы должны включить его как зависимость и использовать как компиляцию в функции ссылок, тогда она должна работать. –