제 애플리케이션에서는 경로 맵에 공통된 부모/자식 관계가 있습니다.find() 및 find (id)를 사용하여 서버에 Ajax 호출을 호출하십시오.
App.Router.map(function() {
this.resource('strats', {path: "/"}, function() {
this.route('strat', {path: "/strat/:strat_id"});
});
});
나의 이해는 엠버 먼저 부모 경로를 입력하면, 그것은() 일반적으로 서버에 Ajax 호출을 트리거 모든 모델을 얻을 찾을 호출하는 것입니다. Ember가 나중에 하위 경로로 전환하면 find(), find (id)가 먼저 호출됩니다. 아이덴티티 맵 구현 (예 : Ember-Data 또는 Ember-Model)과 함께 데이터 레이어를 사용하는 경우 find() 및 find (id)를 호출하면 데이터가 로컬 메모리에서 페치되고 Ember 응용 프로그램이 실행되는 동안이 함수를 호출 한 결과로 서버에 대한 또 다른 Ajax 호출을 시작할 필요가 없습니다. 이 이해가 정확하다면 서버 측에서 find (id)를 구현하지 않아도됩니다.
내 응용 프로그램에 Ember-Model을 사용하고 있습니다. 경로 사이를 탐색하면서 서버 측에서는 잠시 한 번씩 들어오는 개별 모델에 대한 요청을 확인합니다. find (id)를 호출하면 Ajax 호출이 서버로 트리거되는 경우가 있습니다. 이는 예기치 않게 발생했습니다. 위에서 설명한 내 논리의 결함은 어디에 있습니까?
그래서 Ember는 마지막 단락에서 언급 한 타이밍 문제로 인해 find()와 find (n)에 대해 서버로 이동합니다. 그러나 그 이후 Ember는 이미 모든 모델이 로컬에 저장되어 있기 때문에 응용 프로그램이 실행되는 동안에는 서버에 다시 가지 않아도됩니다. 나는 이것을 정확하게 해석하고 있는가? – ptmoy2
맞습니다. – Kingpin2k