0

contenteditableと呼ばれる分離スコープで呼び出されるディレクティブがありますpost: "&"

質問:

Post という分離スコープをデフォルトの contenteditable ディレクティブに置き換えるにはどうすればよいですか。

angular.module('t23App').
directive("contenteditable", function() {
    return {
        restrict: "A",
        require: "ngModel",
        scope: {
            post: "&"
        },
        link: function(scope, element, attrs, ngModel) {
            console.log(contenteditable)
            function read() {
                ngModel.$setViewValue(element.html());
            }

            ngModel.$render = function() {
                element.html(ngModel.$viewValue || "");
            };

            element.bind("blur keyup change", function() {
                scope.$apply(read);
            });
        }
    };
});

したがって:現在このように見えるもの

<div contenteditable post="dosomething()"> Click this</div>

最終的に、html は次のようになります。

<div contenteditable="dosomething()"> Click this</div>
4

1 に答える 1

1

ディレクティブの名前をスコープに入れます。

scope: {
  contenteditable: "&"
}
于 2015-07-10T21:57:24.037 に答える