Я хочу перенаправить с маршрута /new и сохранить параметры запроса для маршрута new:
Насколько мне известно, единственное место для доступа к queryParams находится внутри крюка model маршрута.
Но я хочу перенаправить в beforeModel hook:
import Ember from "ember";
export default Ember.Route.extend({
/**
* @@override
* Implicitly create a new applicant, redirecting to the generated ID at /applications/#{id}
* @param transition
*/
beforeModel: function(transition) {
var emptyApplicant = this.store.createRecord("applicant",
{isPrimary: true}
),
emptyApplication = this.store.createRecord("application");
emptyApplication.set("applicant", emptyApplicant);
emptyApplicant.save().then((savedApplicant) => {
emptyApplication.save().then((savedApplication) => {
this.transitionTo("applications", savedApplication);
});
});
}
});
В то время как вышеприведенный код работает, переход завершится без сохранения параметров запроса. Например, переход на applicants/new?agent=35 не сохранит agent=35 в параметре запроса и вместо этого будет просто перенаправлен на applicants/new.
Как я могу получить доступ к объекту queryParams из тэга beforeModel в моем приложении Ember?