2016-05-06 2 views
0

У меня есть JSon файл, как показано нижевыборки данных из файла JSON в Polymer

{ 
    "23": { 
     "id": 23, 
     "featured": true, 
     "name": "Dawid Ostrowski", 
     "title": "Developer Relations Program Manager", 
     "company": "Google", 
     "country": "Switzerland", 
     "photoUrl": "/images/people/dawid_ostrowski.jpg",    
    }, 
    "9": { 
     "id": 9, 
     "featured": true, 
     "name": "Mandy Waite", 
     "title": "Developer Relations Engineer", 
     "company": "Google", 
     "country": "UK", 
    }, 
    "15": { 
     "id": 15, 
     "featured": true, 
     "name": "Jakub Škvára", 
     "title": "Frontend engineer", 
     "company": "Shipito", 
     "country": "Czech Republic", 
     "photoUrl": "/images/people/jakub_skvara.jpg", 
    }, 
    "14": { 
     "id": 14, 
     "name": "Jana Moudrá", 
     "title": "Co-Founder", 
     "company": "Juicymo", 
     "country": "Czech Republic", 
     "photoUrl": "/images/people/jana_moudra.jpg" 
    } 
} 

Я хочу, чтобы получить все данные в Polymer определенной id. нравится, если кто-то посещает example.com/user/23, я хочу получить данные из 23, чтобы я мог отображать страницу с использованием данных.

Как это сделать в Полимере?

ответ

0

Предполагая, что у вас есть только один статический файл .json, а не API для выборочного возврата строк JSON на основе параметров запроса, вы можете сделать следующее.

Реализовать следующий метод вашего полимерного элемента:

getEntryById: function (id) { 
    return this.queryResult[id]; 
} 

Используйте полимер iron-ajax элемента и связать lastResponse свойства этого элемента queryResult на новом элементе, а requestUrl свойства расположения вашего .json файл.

Конечно, вам нужен какой-то клиентский маршрутизатор (например, Page.js, входящий в комплект Polymer Starter Kit), который считывает параметры маршрута и маршрута (идентификатор пользователя) из URL-адреса и передает его вашему элементу Polymer, поэтому вы можете соответствующим образом вызвать функцию getEntryById.