我如何使用 Angular JS 将 if else 放入 cshtml 中?

How can i put an if else inside cshtml using Angular JS?

我有一个充满水果的清单。

<select ng-options=" (s.fruit != null ? ', ' + s.fruit : '') for s in fruitList"></select>

s.fruit 是 'A'(Apple)、'O'(橙色)、'B'(香蕉)

例如,下拉列表中的输出将是 id + A。 所以会得到:

     1, A
     2, O
     3, O
     4, B
     5, A

我要输出:

    1, Apple
    2, Orange
    3, Orange
    4, Banana
    5, Apple

我可以做类似的事情吗

    <select ng-options=" (s.fruit != null ? ', ' + GetfruitName(s.fruit) : '') for s in fruitList"> 
    </select>

并在控制器中定义函数 ?

是的,你可以像演示一样在控制器中定义一个函数:

代码:

 <div ng-app="myApp" ng-controller="myCtrl">
    <select ng-options="(s.fruit != null ? s.id+', ' + GetfruitName(s.fruit) : '') for s in fruitList" ng-model=""></select>
</div>

@section scripts{
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.9/angular.min.js"></script>
    <script>
        var app = angular.module('myApp', []);
        app.controller('myCtrl', function ($scope) {

            $scope.fruitList = [
                {
                    id: "1",
                    fruit: "A"
                },
                {
                    id: "2",
                    fruit: "O"
                },
                {
                    id: "3",
                    fruit: "O"
                },
                {
                    id: "4",
                    fruit: "B"
                },
                {
                    id: "5",
                    fruit: "A"
                }
            ];
            $scope.GetfruitName = function (fruit) {
                switch (fruit) {
                    case "A":
                        return "Apple";
                    case "B":
                        return "Banana";
                    case "O":
                        return "Orange";
                    default: return fruit;  
                };
            }
        });
        
    </script>
}

结果: