在ember页面

时间:2017-09-18 14:34:10

标签: javascript url ember.js

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

这正确地路由到我的routename

问题是,我想在我的控制器或路由中读取布尔参数(isFromJSP)和列表参数(数据)。怎么做?

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

1 个答案:

答案 0 :(得分:1)

您应该结帐query params

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

params

接下来,您可以将此用于计算属性,也可以在传递给路由model挂钩的queryParams: { isFromJSP: { refreshModel: true }, data: { refreshModel: true } }, 哈希上访问它们。如果你这样做,请考虑将其添加到你的路线:

var chart = AmCharts.makeChart("chartdiv", {
            "theme": "light",
            "labelText": "[[title]]: [[value]]",
            "type": "serial",
            "titles": [{
                "text": "Benches Classification by Borough",
                "size": 16
            }],
            "valueAxes": [{
                "stackType": "3d",
                "unit": "",
                "position": "left",
                "title": "Bench Counts:",
            }],
            "startDuration": 1,
            "graphs": [
            {
                "balloonText": "backless : [[value]]",
                "fillAlphas": 0.9,
                "lineAlpha": 0.2,
                "title": "backless",
                "type": "column",
                "valueField": "backless"
            },
            {
                "balloonText": "backed:[[value]]",
                "fillAlphas": 0.9,
                "lineAlpha": 0.2,
                "title": "backed",
                "type": "column",
                "valueField": "backed"
            }],

            "plotAreaFillAlphas": 0.1,
            "depth3D": 73,
            "angle": 60,
            "categoryField": "Borough",
            "categoryAxis": {
                "gridPosition": "start"
            },
            "export": {
                "enabled": true
            }
        });

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