在车把渲染嵌套的对象时,你可以改变目前的范围,因此,如果你有一个对象:变化范围在AngularJS
walrus: {
bubbles: 7,
zombies[
{name: 'Jim', hobby: 'pinocle'},
{name: 'Cassandra', hobby: 'privateering'},
{name: 'Ke$ha', hobby: 'yelling'}
],
address: {
city: 'Fresno',
state: 'CA'
}
}
然后我可以发送上下文模板像这样:
<article class='walrus'>
<h2>I have {{ bubbles }} bubbles!</h2>
<ul>
{{#each zombies}}
<li>{{ name }} likes {{ hobby }}
{{/each }}
</ul>
<div class='address'>
{{#with address}}
<p>{{city}}, {{state}}</p>
{{/with}}
</div>
</article>
但棱角分明,如果设置了$ scope.walrus =海象,我结束了这一点:
<article class='walrus'>
<h2>I have {{ walrus.bubbles }} bubbles!</h2>
<ul>
<li ng-repeat="zombie in walrus.zombies">{{ zombie.name }} likes {{ zombie.hobby }}
</ul>
<div class='address'>
<p>{{walrus.address.city}}, {{walrus.address.state}}</p>
</div>
</article>
是否有WA是否让Angular识别它的范围,并且不需要额外的walrus.
,zombie.
或(最坏的)walrus.address.
?
你的意思是你想使用不同范围的相同模板吗?你有什么用例?我的第一个想法是指令或简单地不同的路线,但我不知道这是你在找什么:) – 2013-03-12 22:22:08
我有一个类似于具有嵌套对象的示例对象的对象。如果我想拥有一个海象#表演视图,那么我需要渲染所有这些信息(所以不在另一个路径上),但输入嵌套对象会使我的视图变得混乱!无可否认,这是一种风格的东西,但看看那种不必要的尴尬'.address p'! – Chris 2013-03-12 22:50:06
容易将'clutter'移动到一个指令[plunker demo](http://plnkr.co/edit/3psx921S4AO7w6s2NboZ?p=preview) – charlietfl 2013-03-13 00:16:05