1

私はangularjsの新機能で、angularjsアプリケーションにjsonがあります。そのjsonが空でない(配列である)ときにng-switchを機能させたいです。それは大きなjsonで、その一部について話しているのですが、ng-switchで可能ですか? または、コントローラーでスコープパラメーターを設定する必要がありますか? または私が知らない他の方法

JSON

...,
"venues": [{"vid":"12",...},{"vid":"13",},{"vid":"14",..}],...

マークアップ

<div ng-switch on="team.venues" >
    <ul ng-switch-when="venue is not empty">
        <li ng-repeat="venue in team.venues">
            {{venue.vid}}
        </li>
    </ul>
    <p ng-s­wit­ch-­def­ault>no venue</p>
</div>
4

2 に答える 2

2

はい、このように使用します

<div ng-switch on="team.venues.length > 0" >
            <ul ng-switch-when="true">
                <li ng-repeat="venue in team.venues">
                 {{venue.vid}}
                </li>
            </ul>
            <p ng-s­wit­ch-­def­ault>no venue</p>
</div>

これは<ul ng-switch-when="true">いつteam.venues.length > 0であるかを示しtrueます。

これはDOCが言うことです、

<ANY ng-switch="expression">
    <ANY ng-switch-when="matchValue1">...</ANY>
    <ANY ng-switch-when="matchValue2">...</ANY>
    <ANY ng-switch-default>...</ANY>
</ANY>

ここに公式のデモがあります

于 2015-07-26T08:44:01.020 に答える
1

のような直接表現を直接使用できますng-switch-when="team.venues.length > 0 && team.venues"

マークアップ

<div ng-switch on="team.venues">
     <ul ng-switch-when="team.venues.length > 0 && team.venues">
       <li ng-repeat="venue in team.venues">
          {{venue.vid}}
       </li>
     </ul>
     <p ng-s­wit­ch-­def­ault>no venue</p>
</div>
于 2015-07-26T08:45:18.567 に答える