I have the following data:
$scope.allNames = [
"A": [ { "name": "a1" }, { "name": "a2" }, { "name": "a3"} ],
"B": [ { "name": "b1" }, { "name": "b2" }, { "name": "b3"} ],
"C": [ { "name": "c1" }, { "name": "c2" }, { "name": "c3"} ],
]
<div ng-repeat="(letter, names) in allNames | filter:myFilter">
<h4>{{ letter }}</h4>
<ul ng-repeat="n in names">
<li>{{ n.name }}</li>
</ul>
</div>
// on click show only name for this letter.
<span ng-click="myFilter = ??">A</span>
<span ng-click="myFilter = ??">B</span>
<span ng-click="myFilter = ??">C</span>
What I'm trying to do is on click of <span>A</span> show only names that have $key: A in allNames variable or that start with A. This is where I get stuck on how to filter by index of array.
name1thruname9values andmyFilter.ng-repeat. it should be on the element you want to filter, not the element you are choosing from. also, putting anng-repeaton aulcauses unusual UI glitches, the repeat should be on theliinstead.$scope.allNames = { "A": [ { name: a1 }, { name: a2 }, { name: a3} ], "B": [ { name: b1 }, { name: b2 }, { name: b3} ], "C": [ { name: c1 }, { name: c2 }, { name: c3} ], }This is also wring values wire like[ { "name": "a1" }, { "name": "a2" }, { "name": "a3" } ]ng-click="chosenArray = allNames['A']"then loop throughchosenArrayto display it's values?