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”和其他小东西。我试图将您的请求复制成一个可能的副本。您可以在此处看到: