Wie interagieren Sie mit isolieren scope-variable, die in einer Richtlinie controller?

Habe ich-Richtlinie myDirective, das hat einen zwei-Wege-Bindung isolieren Umfang. Wenn der Benutzer auf eine Schaltfläche klickt, möchte ich ändern, isolieren Umfang auf einen Wert. Ich dachte, isolieren Bereiche gebunden waren, die $scope, aber ich bin falsch. Wie kann ich 'greifen' und interagieren mit diesem Isolat-Bereich? Sind Sie nicht an die Richtlinie controller-Bereich?

angular.module("app", [])
.controller("myCtrl", function($scope){
    $scope.ctrlTwoway = "Eggs";
})
.directive("myDirective", function(){
    return {
        scope: {
          twoway: =
        },
        template: "<button ng-click="changeTwoway()">Change two way isolate scope</button>",
        controller: function($scope, $element, $attrs){
            $scope.changeTwoway = function(){
                //get twoway from isolate scope, and update the value with "bacon"
                //$scope.twoway = "bacon" doesn't work 
                //nor does $attrs.twoway = "bacon" work, either :(
            };
        }
    }
});

Und die HTML -

...
<div my-directive twoway="{{ctrlTwoway}}"></div>
Current value: {{ctrlTwoway}}
Sie sicher, dass controller: ist nicht dazu gedacht zu sein link: ?
Ich denke du hast einen Schreibfehler bei "twoway": =", es sollte "twoway -: '='"

InformationsquelleAutor Andrew Allbright | 2013-10-24

Schreibe einen Kommentar