我决定注意文档中的警告,而不是执行来自我的数据库的脚本。相反,我找到了 GitHub gists 的替代方案:http: //alexgorbatchev.com/SyntaxHighlighter
现在我仍然可以在我的博客条目中使用 HTML 并ng-bind-html
对其进行清理,并且我可以在我的布局中嵌入语法荧光笔脚本。我只需要创建一个指令来调用它:
布局
<article ng-repeat="blog in blogs" repeat-done="layoutDone()">
<h4 class="title-bg">{{blog.title}}</h4>
<div class="post-summary">
<p ng-bind-html="blog.body"></p>
</div><!-- /post-summary -->
</article>
指示
angular.module('socketwizApp')
.directive('repeatDone', function ($parse) {
return {
restrict: 'A',
link: function (scope, element, attrs) {
if (scope.$last) {
var fn = $parse(attrs.repeatDone);
fn(scope);
};
}
};
});
控制器
$scope.layoutDone = function() {
$timeout(function(){
SyntaxHighlighter.defaults.toolbar = false;
SyntaxHighlighter.highlight();
}, 0);
};