Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在ExtJS中,如何使store.load(config)发送的参数不限于预定义的参数?_Extjs_Extjs4 - Fatal编程技术网

在ExtJS中,如何使store.load(config)发送的参数不限于预定义的参数?

在ExtJS中,如何使store.load(config)发送的参数不限于预定义的参数?,extjs,extjs4,Extjs,Extjs4,我正在对商店执行远程筛选 我编写了如下代码: myStore.load({ limit: 8, foo: 'foo is never sent', filters:[{'property':'some property','value':30,'comparison':'lt','field':'age'}] }); 它最终使用GET方法发送到服务器,参数如下:(来自chrome/firebug) 请求的URL: myServerPage.php?_dc=1327757

我正在对商店执行远程筛选

我编写了如下代码:

myStore.load({
    limit: 8,
    foo: 'foo is never sent',
    filters:[{'property':'some property','value':30,'comparison':'lt','field':'age'}]
});
它最终使用GET方法发送到服务器,参数如下:(来自chrome/firebug)

请求的URL:

myServerPage.php?_dc=1327757119914&page=1&start=0&limit=8&filter=%5B%7B%22property%22%3A%22some%20property%22%2C%22value%22%3A30%7D%5D
缺少“foo”,更重要的是,在传递的“filter”对象中,只发送了“property”和“value”。(我认为这两个是预定义的,filter config不接受其他键和值)

如何使用load()将自己的参数发送到服务器,尤其是在“过滤器”部分?

另一种方式:

myStore.load({
  params: {
    foo: 'foo'
  }
})
myStore.getProxy().extraParams= {search: "something"}

我认为你需要用真实的例子来改进你的问题,因为不仅foo从来没有发送过,filters也没有发送过——相反,你说它发送类似这样的东西(不是很精确),然后它包含filter not filters谢谢你的建议。我做了一些编辑使它更容易理解。这种方法允许动态设置参数。这一解决办法更适合投票表决。实际上,当您希望跨多个请求保留参数时,此解决方案会更好。使用params加载方法更适合动态数据。是的,但是当我使用Ext.Net时,我不能总是调用load方法,但是我需要在加载之前和加载之间更改参数。在这种情况下,你的方式更好。
myStore.getProxy().extraParams= {search: "something"}