2014-12-05 158 views
1

我創建了一個自定義的指令,並正在使用雙向綁定(=)angularjs定製指令雙向綁定表不工作

但我想,當模型指令改爲觀看控制器的變化。

當用戶改變輸入時警報應該出現,但警報在開始時只出現一次。

我的JavaScript

var myApp = angular.module('myApp', []) 

    .controller("myCtrl", function ($scope) { 
    $scope.test = "myValue"; 
    $scope.$watch('myValue', function() { 
     alert('hey, myVar has changed!'); 
    }); 
}) 

    .directive('myDirective', function() { 
    return { 
     restrict: 'EA', 
     scope: { 
      myModel: '=ngModel' 
     }, 
     template: '<input ng-model="myModel"/>' 
    } 
}); 

和HTML

<div ng-app="myApp"> 
    <div ng-controller="myCtrl">{{test}} 
     <my-directive ng-model="test"></my-directive> 
    </div> 
</div> 

http://jsfiddle.net/c7nbk8uq/

回答

1

你正在看錯變量?

$scope.$watch('test', function() { 
     alert('hey, myVar has changed!'); 
    });