私は少しフィドルを準備し、それを最小限に煮詰めました:
http://jsfiddle.net/lpeterse/NdhjD/4/
<script type="text/javascript">
angular.module('app', ['ui.bootstrap']);
function Ctrl($scope) {
$scope.foo = "42";
}
</script>
<div ng-app="app" ng-controller="Ctrl">
1: {{foo}}<br />
2: <input ng-model="foo" />
<tabs>
<pane heading="tab">
3: {{foo}}<br />
4: <input ng-model="foo" />
</pane>
</tabs>
</div>
最初は、すべてのビューがモデルを参照しますCtrl.foo
。
入力で何かを変更する2:
と、モデルが適切に更新され、この変更がすべてのビューに反映されます。
入力の何かを変更4:
しても、同じペインに含まれるビューにのみ影響します。どういうわけか分岐したスコープのように動作します。その後の変更2:
はタブに反映されなくなりました。
ディレクティブ、スコープ、トランスクルージョンに関する角度のあるドキュメントを読みましたが、この望ましくない動作の説明が見つかりませんでした。
ヒントをいただければ幸いです:-)