在 ember 页面中访问 URL 中的请求参数

Access request parameters in URL in ember page

我在我的应用程序中使用 Ember.js。在 .jsp 页面中,我有一个按钮,当我单击该按钮时,我调用 url = "emberapp/myproject/routename?isFromJSP=true&data=[1,2]".

这正确地路由到我的 routename

问题是,我想在我的控制器或路由中读取布尔参数 (isFromJSP) 和列表参数 (data)。如何操作?

PS:我知道使用 window.location.href 但它没有在我的 EMBER 初始化函数中返回当前页面。我正在使用 AJAX 调用在 init 函数中为我的 ember 页面获取数据,我想将这些请求参数作为请求 json 对象传递。

您应该查看 query params

基本上您可以在控制器中执行此操作:

queryParams: ['isFromJSP', 'data'],
isFromJSP: false,
data: [],

接下来您可以将其用于计算属性,或者在传递给路由 model 挂钩的 params 哈希上访问它们。如果您稍后考虑将此添加到您的路线:

queryParams: {
  isFromJSP: {
    refreshModel: true
  },
  data: {
    refreshModel: true
  }
},

这将强制对查询参数的更改将重新加载模型(并将进行完整转换)。