我正在使用带有angular directive的TinyCME html编辑器,并且我使用ng-html-bind将编辑器-which is data的输出呈现到一个div中。
<div ng-bind-html="description" ></div>
一切都很正常,但我在div中没有看到编辑器中的内容,特别是在样式方面,比如背景颜色和文本颜色,这是我在编辑器中看到的内容
下面是我在div中获得的内容
听起来编辑器中应用的所有样式最终都将被div上下文中的样式覆盖
我在CSS方面没有任何经验,所以请原谅我缺乏知识
我真正想要做的是在div中呈现编辑器输出,以一种与编辑器中的输出完全相同的方式。
发布于 2018-06-05 09:42:35
我已经解决了这个问题,这个问题源于ng-bind-html去掉了来自编辑器的所有样式信息,这就是为什么没有样式信息的原因
为了解决这个问题,我们应该使用angularjs服务$sec,它告诉ng-bind-html不要从html字符串中去掉任何东西。
因此,为了在角度表达式中使用它,我们应该将它用作过滤器
app.filter('trustAsHtml', ["$sce", function ($sce) { return $sce.trustAsHtml; } ] );
然后,您可以在绑定表达式中使用此过滤器,如下所示:
<div ng-bind-html="currentModel.description | trustAsHtml" ></div>
https://stackoverflow.com/questions/50689924
复制相似问题