대상 (동적 ID 포함)이 현재 경로와 일치하는 경우 전환을 중단하는 일반적인 방법 (즉, 응용 프로그램 라우터)이 있습니까?ember.js : 대상이 현재 경로와 일치하는 경우 전환을 중단하는 방법
willTransition에 연결하려고 시도했지만 transition.params에 현재 ID가 포함되어있는 것 같아서 비교할 항목이 없습니다.
대상 (동적 ID 포함)이 현재 경로와 일치하는 경우 전환을 중단하는 일반적인 방법 (즉, 응용 프로그램 라우터)이 있습니까?ember.js : 대상이 현재 경로와 일치하는 경우 전환을 중단하는 방법
willTransition에 연결하려고 시도했지만 transition.params에 현재 ID가 포함되어있는 것 같아서 비교할 항목이 없습니다.
전류 경로의 PARAMS 아닌 대상을 참조한다 전이의 특성 params
. 필요한 것은 providedModels
속성을 통해 전환에 제공된 모델을 확인하는 것입니다. 코드는 다음과 같아야합니다.
통찰력을 가져 주셔서 감사합니다,이 잘 작동합니다! – fwoeck
난 그냥 내 애플 리케이션에서 이것을 테스트하고 당신이 찾고있는 것 같아요. 기본적으로 컨트롤러의 model.id
에 대한 매개 변수에 job_id
을 테스트합니다.
App.JobRoute = Ember.Route.extend({
actions: {
willTransition: function(transition) {
if (this.controller.get('model.id') == transition.params.job_id) {
transition.abort();
}
}
}
});
궁금한 점이 있다면, 왜이 코드가 필요할까요? – mavilein
@mavilein : 내 페이지에는 애니메이션과 같은 CSS가있는 상태가 있습니다. 이 응용 프로그램의 특성으로 인해 사용자는 실제로있는 URL을 호출합니다. 따라서 중단함으로써 애니메이션 상태를 다시 설정하지 않아도됩니다. – fwoeck