Как добавить linebreak в textContent в $mdDialog
Я хочу добавить разрыв строки в .textcontent из mdDiaglog.
Ниже приведен мой код:
var confirm = $mdDialog.confirm()
.title('Refresh')
.textContent('Some information will be lost.'+'<br>'+ 'Do you want to refresh?')
.targetEvent(ev)
.ok('YES')
.cancel('NO');
$mdDialog.show(confirm).then(function () {
$window.location.reload();
});
}
Ответы
Ответ 1
Используйте .htmlContent().
$mdDialogPreset # textContent (string) - Устанавливает сообщение подтверждения. $mdDialogPreset # htmlContent (string) - Устанавливает подтверждающее сообщение как HTML. Требуется загрузить модуль ngSanitize. HTML не запускается через компилятор Angular.
Документация
Ответ 2
Для выполнения этой задачи вам необходимо установить angular-sanitize.js
. Это JS можно скачать здесь. После загрузки, ссылку на ваш проект после загрузки angularJS.
<head>
<script src="~/Scripts/jquery-1.10.2.min.js"></script>
<script src="~/Scripts/angular/angular.min.js"></script>
<script src="~/Scripts/sanitize/sangular-sanitize.js"></script>
</head>
Поскольку это провайдер, вам нужно создать экземпляр и подключить его вместе, чтобы приложение работало. Следующий JS показывает, как внедрить провайдера.
<script type="text/javascript">
var app = angular.module('MyApp', ['ngMaterial','ngMessages', 'ngSanitize']);
var baseUrl = 'http://localhost:54037/Home/'
</script>
После этого вы можете использовать .htmlContent в коде следующим образом
$mdDialog.show(
$mdDialog.alert()
.clickOutsideToClose(true)
.title('Your Tile')
.htmlContent("<h1>html</h1><h4>works</h4>")
.ok('Okay!')
);
Ответ 3
напишите класс CSS в ваших стилях и используйте '\n' вместо <br>
в textContent()
.md-dialog-content-body p{
white-space: pre;
}