4

これが私の基本的なシナリオです。アイテムのリスト(概要ビュー)については、同じページでクリックされたアイテムの詳細ビューを表示したいと思います。

このjsfiddleの例を取り上げて、このjsfiddleに変換しました。動作を見ると、初めて機能しますが、一貫性はありません。

たぶん誰かがこれを手伝ってくれるか、より良いアプローチを提案することができます。リストを管理するための別のコントローラーと、詳細ビ​​ューを処理するための別のコントローラーが必要です。

4

1 に答える 1

12

例を変換する1つの方法(ngSwitchを使用する場合)は次のようになります。

<ul ng-controller="ListController">
    <li ng-repeat="item in items" ng-controller="ItemController">
        <div ng-click="open(item)">{{item.content}}</div>        
    </li>
    <hr>
    <ng-switch on="anyItemOpen()">
     <div ng-switch-when="true">
         <div ng-controller="ItemController">
             {{opened.name}}: overlay: tweet, share, pin
         </div>  
         <a ng-click="close()">close</a>         
     </div>
    </ng-switch>   
</ul>

そして、これが動作するjsFiddleです:http://jsfiddle.net/pkozlowski_opensource/sJdzt/4/

ngRepeatスコープで作成された参照を試行していたため、jsFiddleが機能しませんでしたitem(したがって、ngRepeatの外部では使用できません)。

于 2012-09-18T12:08:21.350 に答える