Ich versuche, auf nur einen Speicher zu filtern, gegeben die Store-ID, die in einem Dropdown ausgewählt wird.Verwenden von Filter auf angular ng-repeat
HTML:
<tbody data-ng-repeat="store in orderVm.Stores | filter :{store.id=orderVm.Stores.selectedStore.id}">
ich nicht, wie die Filter so eingestellt, dass es nur den einen Laden mit dem angegebenen ID zeigt.
Controller:
vm.Stores = json;// from file
vm.Stores.selectedStore = {
id: vm.Stores[0].Id,
name: vm.Stores[0].MarketplaceName
};
vm.Stores:
[
{
"Id": 1,
"MarketplaceId": 1,
"MarketplaceName": "Etsy"
]
},
{
"Id": 2,
"MarketplaceId": 2,
"MarketplaceName": "Shopify"
}
]
Der Fehler I erhalten ist unerwartet% 2C% 20expecting% 20% 5B% 3A% 5D & p2 = p3 = 32 & orderVm .Stores% 20% 7CNaNilter% 20% 3A% 7Bstore.id% 3DorderVm.Stores.selectedStore.id% 7D & p4 = .id% 3DorderVm.Stores.selectedStore.id% 7D
Sie sollten nicht auf einen Iterator in Ihrem Filter verweisen, also versuchen Sie: {Id = orderVm.Stores.selectedStore.id} Und beachten Sie, dass es Groß-und Kleinschreibung ist. –
Der erste Parameter des Filters akzeptiert entweder 'string',' object' oder 'function', also sollte er syntaktisch '{Id: orderVm.Stores.selectedStore.id}' sein, beachten Sie das Gleichheitszeichen und den Doppelpunkt – kazenorin
Dies funktionierte: Filter: {Id: orderVm.selectedStore.id}, aber ich weiß nicht warum. Insbesondere weiß ich nicht, warum Id groß geschrieben werden muss. – DaveC426913