Angularjs 角度:将控制器函数传播到指令

Angularjs 角度:将控制器函数传播到指令,angularjs,ionic-framework,Angularjs,Ionic Framework,我的控制器中有一个简单的函数,当在我的模板中调用时,它可以完美地工作,如下所示: 在我的控制器中: $scope.save = function(arg){ ... } 在我的模板中: <input ng-model="namespace" ng-change="save(namespace)"> <generic-field namespace="name"></generic-field> 所以我创建了一个指令,这个函数不再传播了: 在我的指示中

我的控制器中有一个简单的函数,当在我的模板中调用时,它可以完美地工作,如下所示:

在我的控制器中:

$scope.save = function(arg){ ... }
在我的模板中:

<input ng-model="namespace" ng-change="save(namespace)">
<generic-field namespace="name"></generic-field>

所以我创建了一个指令,这个函数不再传播了:

在我的指示中:

.directive('genericField', function() {
  return {
    scope: {
      namespace: '=',
      ngChange: '&',
      save: '&',
    },
    template: '<input ng-model="namespace" ng-change="save(namespace)">',
  }
})
.directive('genericField',function(){
返回{
范围:{
命名空间:'=',
ngChange:“&”,
保存:“&”,
},
模板:“”,
}
})
在我的模板中:

<input ng-model="namespace" ng-change="save(namespace)">
<generic-field namespace="name"></generic-field>

我错过了什么?有没有关于这个问题的线索?
谢谢

请按以下方式更改代码。 指令:

.directive('genericField', function() {
  return {
    restrict: 'AE',
    scope: {
      save: '&'
    },
    template: '<input ng-model="namespace" ng-change="save({arg : namespace})">',
  }
})
.directive('genericField',function(){
返回{
限制:“AE”,
范围:{
保存:'&'
},
模板:“”,
}
})
HTML:



您可以提供小提琴吗?似乎您没有将保存功能传递给指令。试试看,你实际上错过了很多东西,比如限制:“AE”和其他小东西。我试图将您的请求复制成一个可能的副本。您可以在此处看到: