use*_*980 10 redirect ember.js ember-data
我想从路由重定向/new,并保留路由的查询参数new:
据我所知,唯一可以进入的地方queryParams是model路线的钩子.
但我想重新定位beforeModel钩子:
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);
});
});
}
});
Run Code Online (Sandbox Code Playgroud)
虽然上面的代码有效,但转换将在不保留查询参数的情况下完成.例如,导航到applicants/new?agent=35不会保留agent=35在查询参数中,而只是重定向到applicants/new.
如何queryParams从beforeModel我的Ember应用程序中的钩子中访问该对象?
您应该能够将查询参数传递给transitionTo以下行:
this.transitionTo("applications", savedApplication, {
queryParams: transition.queryParams
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1301 次 |
| 最近记录: |