BootstrapDialog и angularJS, включая HTML

Я использую https://github.com/nakupanda/bootstrap3-dialog для отображения диалогов в моем веб-приложении.

$scope.importFileWithSettings = function(){
                BootstrapDialog.show({
                        type: BootstrapDialog.TYPE_INFO,
                        message: "<div ng-include=\"'importform.html'\"></div>",
                        title: 'Title',
                });
            }; 

importform.html находится в том же каталоге. Когда отображается диалоговое окно, оно не показывает содержимое importform.html. Как это сделать правильно (я относительно новичок в angularJS и bootsrap)?

2 ответа

Решение

Вы можете использовать скрипт-компонент angularjs, это лучший способ включить шаблоны...

<script type="text/ng-template" id="exampleTemplateId">
   Content of the template.
</script>

тогда в тебе ng-include директива использовать его со своим идентификатором

<div ng-include=\"'exampleTemplateId'\"></div>

для более подробной информации вы можете проверить документы

ОБНОВИТЬ

Для этого вы можете использовать сервис $ templateCache angularjs...

в вашем run заблокировать вы можете использовать этот сервис, как это

var myApp = angular.module('myApp', []);
myApp.run(function($templateCache) {
  $templateCache.put('exampleTemplateId', 'This is the content of the template');
}); 

и снова использовать его в ng-inlucde как я уже говорил выше

Согласно документации это должно работать:

$scope.importFileWithSettings = function(){
    BootstrapDialog.show({
            type: BootstrapDialog.TYPE_INFO,
            message: "$('<div></div>').load('importform.html')",
            title: 'Title',
    });
}; 
Другие вопросы по тегам