在1.7 Ember應支持查詢參數。我沒有問題在控制器中使用它們,但我想在Route中訪問它們,理想情況是在beforeModel鉤子中,但模型鉤子也可以。如何從Ember中的路由訪問查詢參數1.7
API docs提到了beforeModel鉤子的quereyParam參數,但如果我嘗試使用它,它總是未定義的。
Query Parameters guide似乎表明查詢參數應作爲模型鉤子的第一個參數的一部分進行訪問。但是這也沒有定義。有關示例,請參閱下面的代碼。
有沒有辦法從路由訪問查詢參數? 謝謝你的幫助。
App.ApplicationRoute = Em.Route.extend({
beforeModel: function(transition, queryParams){
console.log(queryParams.test); //undefined at /?test=123
},
model: function(params){
console.log(params.test); //undefined at /?test=123
}
});
你應該能夠將它從模型鉤子中的'params'對象中拉出來。請參閱:http://emberjs.jsbin.com/necid/1/edit?html,js,console,output您是否將'test'設置爲控制器中的queryParam? – tikotzky 2014-09-19 22:34:38
謝謝,就是這樣。我從來沒有想到Controller可能會影響Route。我認爲該設置僅用於直接在Controller中訪問queryParams。 – jancervinka 2014-09-20 15:26:42