次の AngularJS アプリを検討してください。
- http://jsfiddle.net/pathes/QPL3R/ - angularjs.org ホームページのチュートリアルに基づくアプリケーション、
- http://jsfiddle.net/pathes/cUaEv/ - Jasmine テスト。
メソッドaddPane()
はペインをコントローラーのペイン リストにプッシュし、paneCount()
その長さを返します。3 つのペインを作成した後paneCount()
、バインディングからメソッドにアクセス{{paneCount()}}
し、テストで直接: scope.paneCount()
0 を返します。
AngularJS はコントローラーの 2 つのインスタンスを作成するようです。1 つはコントローラー メソッドからアクセスでき、もう 1 つはスコープからアクセスできます。2 つのインスタンスを作成する必要がある理由を知っている人はいますか? コントローラーとスコープの両方のメソッドから同じプロパティにアクセスする方法はありますか?