如何在angularjs中使用switch case以及如何返回值?

时间:2015-10-23 06:55:37

标签: angularjs switch-statement

我创建了一个这样的范围

var myApp = angular.module("myApp", []);
myApp.controller("MyController", function MyController($scope){ 
$scope.sample = [
{'NUMBER' : '1'},{'NUMBER' : '2'},{'NUMBER' : '3'},{'NUMBER' : '4'}
]
});

我试过这样。在这里​​我需要检索从switch case返回的值并在特定字段中显示它。

<div  ng-repeat = "grp_val in sample">
<div ng-switch-on="{{grp_val.NUMBER}}">
   <div ng-switch-when="1" ng-init="value='ONE'"></div>
   <div ng-switch-when="2" ng-init="value='TWO'"></div>
   <div ng-switch-when="3" ng-init="value='THREE'"></div>
   <div ng-switch-when="4" ng-init="value='FOUR'"></div>
</div>
 <label>{{VALUE}}</label>
</div>

但它没有用。请给出一些解决方案。

1 个答案:

答案 0 :(得分:2)

您已将ng-repeat用于div并尝试在ng-switch内使用ng-repeat,这不是您尝试实施的正确解决方案。

ng-switch-on的语法不正确。它应该是ng-switchon=Expression。查看Documentation

使用ng-init尝试初始化值的方式也不起作用,因为当代码首次执行时,所有具有ng-switch-when的div都不具有初始值,而selected div时变得可见,因为生命周期,它不是来自div的初始值。

使用ng-switch

查看工作demo