2

私は自分のウェブサイトでangular-markedを使用しています。そして、マークダウンでハイライトコードが必要です。プロジェクトでコードを使用するときに、Readme ドキュメントのset default options オプションセクションを読みます。

markedProvider.setOptions({
  gfm: true,
  tables: true,
  highlight: function (code) {
    return hljs.highlightAuto(code).value;
  }
});

Highlight.js docに従って、highlight.js および .css 参照を追加しました。

しかし、Jshintは「hljs」が定義されていないと文句を言います。これを修正する方法を教えてください。

4

2 に答える 2

0

以前にハイライトjsファイルを含めましたsetOptionsか?

これが私のコードです(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;
            }
        });
    }]);
});
于 2014-11-23T13:17:23.943 に答える
0

highlight.js を追加した後、hljs は既にインポートされていると思います。あなたが抱えている問題は、hljsが現在のファイル内で定義されていないことをjshintが検出することですが、ブラウザがすべてのスクリプトをロードした後、hljsが利用可能になります。追加することにより、jshintrc でこのアラームを抑制することができます。 "globals": { "hdls": false, }

于 2016-09-01T04:52:48.220 に答える