Vis*_*kar 6 javascript angularjs angularjs-directive angularjs-scope ng-options
我的指令用法代码
<input-select ng-model="someModel" ng-change="someFunction()"
options="countries"></input-select>
Run Code Online (Sandbox Code Playgroud)
我的指令代码
.directive('inputSelect', function () {
return {
templateUrl: 'someTemplate.html',
restrict: 'E',
scope: {
ngModel: '=',
ngChange: '='
}
};
});
Run Code Online (Sandbox Code Playgroud)
我的指令模板
<select
ng-model="ngModel" ng-init="ngModel "
ng-options="option[optionId] as option[optionName] for option in options"
ng-change="ngChange">
</select>
Run Code Online (Sandbox Code Playgroud)
因此,当所选项被更改时,函数someFunction()将被无限次调用(尽管更改已完成一次),应该更改的内容以确保someFunction()只调用一次(someFunction()是控制器范围内的函数)该指令正在使用中)
[我确实尝试使用&和使用@ngChange的范围类型,somefunction()如果使用它们不会被解雇.]
您应该使用&哪个用于表达式,并且可以使用标记来调用该方法,ngChange()而ngChange不仅仅是
标记
<select
ng-model="ngModel" ng-change="ngChange()"
ng-options="option[optionId] as option[optionName] for option in options">
</select>
Run Code Online (Sandbox Code Playgroud)
码
scope: {
ngModel: '=',
ngChange: '&'
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5750 次 |
| 最近记录: |