현재로서는 아직 이 없습니다. 기본 엠버에서 페이지 매김을 처리하는 방법.
먼저 우리는 더 간단한 것, findAll
요청의 페이지 매김을 살펴보아야합니다.
이
은
.query({page:3})
같은 것을 함께 할,하지만 리드 몇 가지 문제로 할 수 있습니다
이
- 이 고전 매김을위한 좋은 해결책이지만위한 무한 스크롤 당신은 수동으로 결과를 병합해야합니다.
- 결과는 캐시되지 않으므로 페이지가 매겨진 목록에서 앞뒤로 움직이면 많은 쿼리가 발생합니다. 때로는 목록이 편집 가능하지만 종종 편집 할 수있는 경우에는 필요합니다.
두 번째 문제점에 대해 저는 addon called ember-query-cache
을 빌드하여 저장소에 연결하고 쿼리 결과를 캐시 할 수 있습니다. 매우 짧은 데모는 here입니다.
이제 우리는 솔직히 당신이 엠버 데이터 자체에서 더 나은 지원을 할 때까지 최상위 .query
를 사용하는 것이 좋습니다의 관계에 대해 이야기하는 경우 :
store.query('task', { person: get(person, 'id'), page: 3 }
나쁜 그것에 대해 아무것도 없다. 당신은 당신의 결과를 얻고 다른 방향의 관계를가집니다. 캐싱이 필요하지 않는 한 ember 데이터에 해킹을하지 않아도 작동합니다. 캐싱이 필요한 경우 애드온에서 수행 한 해킹이 거의 필요하지 않습니다.
우리는 여전히 ember-data가 완전히 JSONAPI가되기를 희망합니다. 따라서 페이지 매김이 필요합니다. 나는 폼을 API 관점으로 생각하면 가장 좋은 점은 관계에 의해 리턴 된 ManyArray의 다음 페이지와 이전 페이지를 요청할 수있는 능력이 있어야한다는 것이다. JSONAPI와 함께 다음 링크와 이전 링크가 제공됩니다. 그러나 이제는 많은 프로젝트에서 성공적으로 사용한 최상위 수준 인 .query
을 크게 개선하지 않으면 서 ember 데이터를 심층적으로 분석해야합니다.
출처
2016-05-17 10:30:51
Lux
이것에 대한 좋은 해결책을 찾아 냈습니까? – RyanJM