2015-03-19 40 views
0

如果我的密钥以“$”开头,那么ng-repeat无法正常工作。我认为angularjs可以把它当作一个特殊的指令作为$ index。有没有办法让它工作?

<div ng-app='app'> 
    <h1 ng-repeat='(key,val) in {"SimpleKey":"This works fine"}'>{{key}}:{{val}}</h1> 
    <h1 ng-repeat='(key,val) in {"Key/$/FOO":"This works fine"}'>{{key}}:{{val}}</h1> 
    <h1 ng-repeat='(key,val) in {"$/FOO":"This does NOT work fine!"}'>{{key}}:{{val}}</h1> 
</div> 

你可以试试这个:Code Pen

+0

为什么你需要使用美元符号? – Flukey 2015-03-19 09:52:02

+0

在角对象中有许多角度属性以$或$$开头,因此,如果它们不会过滤出这些属性,那么您将在每个循环中获得额外的项目。 – YOU 2015-03-19 10:00:08

+0

这是角码,'if(collection.hasOwnProperty(key)&& key.charAt(0)!='$'){collectionKeys.push(key); }',这意味着你必须修复它在你身边。 – YOU 2015-03-19 10:07:48

回答

0

只是把空间之前,$它为你工作