Как использовать ng-include из кода?

0

Я хочу использовать директиву ng-include из кода. Что-то вроде

var html = '<div ng-include="\'myTemplate.html\'"></div>';
$compile(html)($scope);
angular.element(document.getElementById('myDiv')).append(html);

но этот не работает должным образом. Может ли кто-нибудь объяснить, как достичь этого правильно?

  • 0
    Вы добавили шаблонный скрипт myTemplate.html в элемент ng-app? Или myTemplate.html это правильный URL-адрес, по которому можно получить шаблон?
  • 0
    Это правильный URL.
Показать ещё 1 комментарий
Теги:
angular-directive
angularjs-directive
angularjs-ng-include
ng-include

2 ответа

0

Измените порядок своих заявлений.

var html = '<div id="dynamicID" ng-include="\'myTemplate.html\'"></div>';
var ngEl = angular.element(document.getElementById('myDiv'));
ngEl.append(html);
$compile(ngEl.find('#dynamicID'))($scope);
  • 0
    Спасибо @Raulucco. Это сработало.. :)
0

Если вы хотите включить html на свою веб-страницу, вы должны вместо этого использовать ng-bing-html:

HTML

<div id="myDiv" ng-bind-html="template"></div>

JS

.controller('name', function($scope, $http, $sce, ...) {
    $http.get('myTemplate.html').success(function(template) {
        $scope.template = $sce.trustAsHtml(template);
    });
});

Ещё вопросы

Сообщество Overcoder
Наверх
Меню