基本上我尝试使用Angularjs |
设置ng-bind
样式,但是它不应用样式将span
标记添加到字符串中。使用AngularJs来实现这项任务的正确方法是什么?
main.html中
<li ng-repeat="message in event.data track by $index">
<span class="messageMargin" ng-bind="messageTest">{{message.value}}</span>
</li>
ctrl.js
var data = "[2017-07-12T12:38:36-04:00]|zds455|info|<n/a>|[infra.actorRouter] Processing message from topic UEQ: 216014da-b849-4a1d-8232-3629e58338ce { partition: 0, offset: 12081530 }"
$scope.messageTest = data.replace(/\|/g, '<span class="pipe">|</span>');
的main.css
.pipe {
background: red;
width: 1em;
color: white;
display: inline-block;
text-align: center;
}
答案 0 :(得分:0)
尝试使用ng-bind-html
,但请记住先将$sanitize
添加到模块依赖项中。
当您使用ng-bind
angular忽略所有html标记时。请记住,使用ng-bind-html有时可能不安全(例如,如果用户可以访问该变量,则可以注入恶意代码)
正则表达式与此无关。您只是尝试插入经典ng-bind
中不允许的html标记。