У меня есть фрагмент кода HTML следующим образом:условно доверия HTML от угловой переменной области действия
<span id="notification"> {{ message }} </span>
Для того, чтобы связать с HTML, мне нужно сделать следующее:
<span id="notification" ng-bind-html="message"></span>
В идеале, я хочу чтобы установить флаг, чтобы доверять $ scope.message как html ... Поэтому мои параметры - использовать ng-if с дублирующимся кодом, но это не идеально, потому что я хотел бы, чтобы это было одинаковым идентификатором для обоих элементов сообщения , Я также изучал возможность использования ng-attr, но не верю, что это сработает.
Есть ли способ, которым я могу условно добавить «ng-bind-html» и «ng-bind», чтобы оценить флаг и удалить нежелательный атрибут? Я новичок в angularjs.
если 'message' не содержит каких-либо HTML, он все равно будет отображаться правильно, используя' ng- связывать-html'; не должно быть причин для условного переключения взад и вперед, если только вас не беспокоит, что в «сообщении» есть HTML, которому вы не хотите доверять, но это будет совершенно отдельный вопрос. – Claies
Моя основная забота заключается в том, что в приложении может появиться шанс, где мы непосредственно показываем контент, предоставленный пользователем (да, большая проблема, но я не хочу делать это хуже). Если пользователь называет что-то «« Я не хочу, чтобы это отображалось. – user3689167
, тогда да, я думаю, что предоставленный ответ @epelc - это путь. вы даже можете переопределить белый список по умолчанию для '$ sanitize', а затем даже не нужно устанавливать флаг для определенного содержимого. – Claies