如何ng-translate里面的选择框选项在angularjs
发布时间:2020-12-17 08:42:00 所属栏目:安全 来源:网络整理
导读:如何在选择框中应用ng-translate翻译选项。 例如: 模板: select class="form-control" ng-model="me.gender" ng-options="gender.name for gender in genders"/select 控制器: $scope.genders = [{code: "M",name:"TXT_MALE"},{code: "F",name:"TXT_FEMAL
如何在选择框中应用ng-translate翻译选项。
例如: 模板: <select class="form-control" ng-model="me.gender" ng-options="gender.name for gender in genders"> </select> 控制器: $scope.genders = [{code: "M",name:"TXT_MALE"},{code: "F",name:"TXT_FEMALE"}] enUS.json: { "TXT_MALE": "Male","TXT_FEMALE": "Female",} 我试过添加过滤器像ng-options =“gender.name性别性别|翻译” 我试着写自己的过滤器(我是新的这个) filter('translateArrayObj',['$translate','_',function($translate,_) { return function(arr) { var arr2 = []; angular.forEach(arr,function (value,key) { $translate(value.name).then(function(translation) { var obj2 = angular.copy(value); obj2.name = translation; obj2.code = value.code; arr2.push(obj2); }); }); return arr2; } }]) 但我得到以下错误 Error: [$rootScope:infdig] 10 $digest() iterations reached. Aborting! 这看起来像一个简单的任务,但它已经花了一半的一天,我做错了:(
您需要将过滤器应用于gender.name,而不是genders数组:
<select ng-model="me.gender" ng-options="gender.name | translate for gender in genders"></select> Here is a demo (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |