1

我有这个笨蛋

我想知道是否有办法在指令之间进行单向绑定?

我有一个父亲指示和他的儿子。我想向孩子发送一个对象(或模型),当孩子收到这个并在输入上显示对象时,如果我修改任何输入字段;父亲不听那些变化。

我决定使用 angular.copy 来修改这个新副本,就在我进行 ng-click 时。Child 将新对象发送给父亲 ('&')。

myApp.directive('oneWayBinding', function() {

  return {
    restrict: 'EA',
    scope: {
      datasource: '=',
      add: '&'
    },
    controller: function ($scope) {

      $scope.newName = {};

      $scope.init = function(datasource) {
        angular.copy($scope.datasource, $scope.newName);
      };

      $scope.init();

      $scope.senFather = function(){
        $scope.add({newName:$scope.newName});
      };

    },
    template: '<h3>Directive</h3>' +
                  '<label>Nombre y Apellido: </label>' +
                  '<input ng-model="newName.name"><input ng-model="newName.apellido"><button ng-click="senFather()">Send Father</button><br>'
  };

});

还有另一种方法或形式来做到这一点?

谢谢

4

1 回答 1

1

我不会使用术语“单向绑定”,但是是的,这就是通常用于隔离更改的方式。

于 2015-08-02T07:38:57.440 回答