Html Angularjs ng bind不使用正则表达式?
基本上,我尝试使用Angularjs ng bind设置|分隔的样式,但它不应用样式,而是将span标记添加到字符串中。使用AngularJs完成此任务的正确方法是什么 main.htmlHtml Angularjs ng bind不使用正则表达式?,html,css,angularjs,angularjs-directive,angularjs-scope,Html,Css,Angularjs,Angularjs Directive,Angularjs Scope,基本上,我尝试使用Angularjs ng bind设置|分隔的样式,但它不应用样式,而是将span标记添加到字符串中。使用AngularJs完成此任务的正确方法是什么 main.html <li ng-repeat="message in event.data track by $index"> <span class="messageMargin" ng-bind="messageTest">{{message.val
<li ng-repeat="message in event.data track by $index">
<span class="messageMargin" ng-bind="messageTest">{{message.value}}</span>
</li>
尝试改用ng bind html,但请记住首先向模块依赖项添加$sanitize
使用ng bind时,将忽略所有html标记。请记住,使用ng bind html有时可能是不安全的,例如,如果用户有权访问该变量,则可以插入恶意代码
正则表达式在这里没有任何关系。您只需尝试插入经典ng bind中不允许的html标记。它可以工作,但会崩溃我的浏览器我有实时日志流。控制台中没有错误我的浏览器冻结无法执行任何操作尝试从span中删除{{message.value}。在使用ng-bind时,无论如何都不应该使用它。分配给event.data的是什么?也许你那里的数据太多了
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>');
.pipe {
background: red;
width: 1em;
color: white;
display: inline-block;
text-align: center;
}