Я работаю над одностраничным приложением, используя динамическую маршрутизацию. Я получаю BookID от URL, как показано нижеAngularJS - Фильтрация Json переменной
myApp.controller('BookCtrl', function($scope,$routeParams) {
$scope.mybookid=$routeParams.bookurl;
});
Вот мои данные
var bookdata = {
"records": [
{
"seriesid": "SpectrumSeries",
"name": "White Curse",
"bookid": "WhiteCurse",
"image": "book1",
}
...
]};
В приведенном выше контроллера, как я отфильтровать объект, который имеет BookID, что равняется $ scope.mybookid? Я знаю, что могу сделать это с помощью ng-repeat и фильтра, но есть ли более эффективный способ?
является 'bookid' уникальным в' records'? – Grundy
Да, это уникально – CuriousHenry
, поэтому вместо массива вы можете использовать объект и просто получить значение по имени свойства, например: 'var bookdata = { " records ": { " WhiteCurse ": { " seriesid ":" SpectrumSeries "," «имя»: «Белое проклятие», «bookid»: «WhiteCurse», «image»: «book1», } ', а затем' records [$ scope.mybookid] ' – Grundy