0

prettify.js でプリティファイしたいコードを含むアプリがありますが、apply メソッドを angular 1.2 で動作させることができません。ただし、1.1で動作します。

角度が原因でボディロードにprettify libをロードできないため、このようなフィルターを作成してみました

App.controller('myCtrl', function($scope) {
    setTimeout(function() {
        $scope.text = "function apply() { return 'not working..'; }";
        $scope.$apply();
    }, 0);
});

App.filter('pretty', function(){
    return function(text) {
        return prettyPrintOne(text);
    }
})

そしてHTML

<div ng-app="Knob" ng-controller="myCtrl">
    <pre ng-bind-html-unsafe="text|pretty"></pre>
</div>

ここで作業フィドル: working fiddle .

angular が 1.2 に変更されたら、ブレークを適用します (または他の何か?)

失敗したフィドル (同じコード、更新された angularjs )壊れたフィドル

4

1 に答える 1

2

問題は $apply が機能していないことではなく、ng-bind-html-unsafe が削除されたことです。詳細については、この回答を確認してください。

于 2014-02-20T20:11:46.730 に答える