모델을 찾은 후에 어떻게 추가 모델 속성을 추가 할 수 있습니까? (또는 어떻게 내가 setupController에서 경로의 PARAMS 액세스 할 수 있습니까?엠버 앱 키트, 추가 모델 속성 설정
는 /routes/gallery.js
export default Ember.Route.extend({
model: function(params) {
return this.store.find('monkeys', { monkeyType: params.gallery_id });
//can I add an additional property to the returned model here?
},
setupController: function(controller, model) {
var pageTitle = 'something related to params.gallery_id';
//can I access route params in here?
this.controllerFor("application").set('pageTitle', pageTitle);
controller.set('model', model);
}
});
가 이상적으로 내가하는 응용 프로그램 컨트롤러의 pageTitle
속성을 설정하려는 경로
this.resource('gallery', { path:'/gallery/:gallery_id' });
와 라우터에게 주어진 일부 gallery_id
특정 문자열은 API 서비스에서 반환하지 않습니다.
api는 URL을 /monkeys?monkeyType=someId
{ "monkeys":[{ ... }, { ... }] }
입력 해 주셔서 감사합니다. 비록 제가 pageTitle이'this.store.find (...) '에서 반환 된 후에 모델에없는 params.gallery_Id를 사용하기 때문에 발생했습니다. – RYFN
Id 그것이 어떻게 문제인지를 알지 못한다. Javascript는 클로저를 가지고 있으며,'params.gallery_id'가 원시적 일 가능성이 높으므로 원하는 중첩 된 함수에서 사용할 수 있습니다. – GJK