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',
});
};