EmberJS: 단일 경로에서 여러 모델 로드
EmberJS 여정을 시작하는 동안 개발자는 관련되지 않은 여러 모델을 로드해야 하는 문제에 직면할 수 있습니다. 같은 경로에. 이 문제를 해결하는 방법은 다음과 같습니다.
경로 고려
먼저 경로가 슬러그 매개변수 ":id"를 기반으로 데이터를 동적으로 로드하는지 평가합니다. 그렇다면 모델 후크에 여러 모델을 로드하지 마세요. 왜? 모델을 사용하여 이러한 경로에 연결할 때 Ember는 모델 후크를 무시하기 때문입니다.
모델 후크의 대안
-
SetupController/afterModel: 이 후크에 추가 모델을 로드하세요. 대기가 필요한 경우 afterModel에서 promise를 반환하고 setupController 내에서 결과를 수동으로 관리하세요.
-
Ember Data: 모델 후크에서 store.find('resource')를 사용하세요. Ember Data는 비동기 상호작용을 자동으로 처리합니다.
비동적 경로 처리
경로가 매개변수를 기반으로 데이터를 동적으로 로드하지 않는 경우 다음은 다음과 같습니다. 옵션:
-
모델 후크의 여러 모델: 여러 모델 키와 값이 있는 객체를 반환합니다.
-
RSVP 해시: 로드 Ember.RSVP.hash({ modelKey: promise/value, ... })를 사용하여 약속 또는 일반 값을 해시로 사용합니다.
-
혼합 및 일치: RSVP 해시를 비약속과 결합합니다. 값에 따라 RSVP가 조정됩니다.
추가 고려 사항
- 차단이 필요한 모델이 있는 경우 다른 방법을 사용하는 것 외에 afterModel에서 Promise를 반환합니다. .
- 설정 컨트롤러를 사용하여 종속성 설정 등 모델을 추가로 수정하거나 연결할 수 있습니다.
- 이러한 기술은 경로별로 적용되며 중첩된 경로에는 적용되지 않는다는 점을 기억하세요.
위 내용은 다음은 질문과 답변 형식에 적합하고 기사의 내용을 정확하게 반영하는 몇 가지 제목 옵션입니다.
옵션 1(문제에 집중):
* EmberJS: Si에 여러 모델을 로드하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!