1

$http.get()AngularJS の関数を使用して、外部 API から HTML コードを受信して​​います。

この HTML を取得して、ビューに直接出力します。<div ng-bind-html="vm.text"></div>

これはこれまでのところうまくいきます。ただし、レンダリング後にスクリプト関数を実行することはできません。受信した HTML がビューに挿入されたらすぐに、highlightJShljs.initHighlighting()から実行する必要があります。

何を試しても、パフォーマンスが低下したか、実行が早すぎました。これまでの私の「最良の」ソリューション:

'use strict';

angular.module('libraryView')
    .directive('highlight', function ($timeout) {
            return {
                link: function () {
                    $timeout(function() {
                        hljs.initHighlighting();
                    }, 1000);
                }
            };
        }
    );
4

0 に答える 0