作者:秋忆道格 | 来源:互联网 | 2023-01-29 14:40
我有一个指令,我正在用img src替换IMG网址以显示图像内联
function message($filter) {
var directive = {
restrict: 'EA',
scope: {
data: '='
},
link: function(scope, elem, attrs) {
scope.data.cOntent= scope.data.content.replace(/(https?:\/\/\S+(\.png|\.jpeg|\.jpg|\.gif))/g, "");
},
template: '{{data.nickname}}: {{data.content}}'
};
return directive;
}
但不是看到内联图像我看到HTML标签作为文本我正在调查$ sce但我不知道如何在指令中使用它.
1> 31piy..:
你离我更近了!你是正确的使用ngSanitize
模块.
它基本上允许您在模板中编写原始HTML(使用ng-bind-html
指令).您需要将它包含在您的页面中,并将其声明为模块中的依赖项,如下所示:
// Javascript
angular.module("yourapp", ['ngSanitize']);
然后,将您的HTML内容绑定到div
(或其他)using ng-bind-html
指令中,如下所示:
template: '{{data.nickname}}: '
现在,原始HTML内容data.content
将替换为指令模板中的内容.这是一个工作的plunker供您参考.