You've stumbled across a gotcha in Angular.
Keys that begin with dollar sign ($) will not be recognized by an ng-repeat ($ is a reserved character in angular and other frontend libraries).
Link to the Github issue (currently seems to be a do-not-fix):
Example fiddle:
http://jsfiddle.net/takvg/4/
From the github issue mentioned above, there is a workaround from frfancha:
Workaround is easy: just make your ng-repeat on Object.keys(myObject)
For instance:
$scope.thing = {
"Globals": {
"$": "M",
"M": {
"z": "q"
}
},
"Other": {
"S": {
'c': "cat"
}
}
};
$scope.range = Object.keys($scope.thing);
You'll be dealing with an array instead of an object, so your ng-repeat will need to change a little bit.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…