如何使用angular-marked设置代码语法高亮显示

时间:2014-11-15 11:19:18

标签: angularjs highlight.js

我在我的网站上使用angular-marked。我希望在降价中突出显示代码。当我在项目中使用代码

时,我在set default options optional部分阅读了自述文档
markedProvider.setOptions({
  gfm: true,
  tables: true,
  highlight: function (code) {
    return hljs.highlightAuto(code).value;
  }
});

我根据Highlight.js doc

添加了highlight.js和.css引用

但Jshint抱怨' hljs'未定义。请帮帮我,如何解决这个问题?

2 个答案:

答案 0 :(得分:0)

您是否在setOptions之前添加了突出显示的js文件?

这是我的代码(使用requirejs和angularAMD)

define([
    'app',
    'hljs',
    'services/srv.post',
    'angular-marked'
], function (app, hljs) {
    app.config(['markedProvider', function(markedProvider) {
        markedProvider.setOptions({
            gfm: true,
            tables: true,
            highlight: function (code, lang, callback) {
                return hljs.highlightAuto(code).value;
            }
        });
    }]);
});

答案 1 :(得分:0)

我相信在添加highlight.js之后已经导入了hljs。您遇到的问题是jshint检测到hljs未在当前文件中定义,但在浏览器加载每个脚本后,hljs将可用。您可以通过添加来抑制jshintrc中的此警报 "globals": { "hdls": false, }

相关问题