$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);
}
};
}
);