Как использовать AngularJs VAR для атрибута HTML

Я включаю тег script в угловой фрагмент, где я загружаю js-виджет. Виджет имеет атрибут data-titleгде я могу передать название. В моем случае заголовок хранится в угловой переменной js view. Как я могу передать название?

если я попробую, например,

<script type="text/javascript" data-title="{{ title }}" src="http://example.com"></script>

, название виджета приводит к {{ title }}

РЕДАКТИРОВАТЬ:

Я добавил JS скрипку, которая показывает проблему. Основная проблема заключается в том, что в момент выполнения внешнего скрипта data-title атрибут по-прежнему {{ title }}, AngularJS, вероятно, изменяет эти переменные представления впоследствии в цикле событий. http://jsfiddle.net/6tqdZ/15/

2 ответа

Решение

Чтобы ответить на ваш вопрос, вам нужно будет оценить угол до тех пор, пока документ не будет готов, так как ваша скрипка выходит за пределы угла, вам нужно будет сделать что-то вроде:

$(document).on('ready',function(){
  var t = document.getElementById("placeholder");
  t.innerHTML = t.getAttribute("data-title"); 
  alert(t.getAttribute("data-title"));
});

Вот обновленная скрипка.

Важно: не рекомендуется смешивать angular с событиями JQuery или любыми другими событиями "за пределами angular", и нет гарантии, что это всегда будет работать, и не будет принят способ решения этой проблемы.

В угловом контроллере js определите переменную html с помощью видимости

function yourController($scope){
  $scope.title = "yourtitle";
}
Другие вопросы по тегам