我正在extjs中编写新标签,它是前一个标签的副本,但数据将相同。
使用route.jsp文件从一个选项卡移动到另一选项卡
说标签A是旧的,标签B是新的,两者都使用相同的route.jsp(路由器)
GLOBAL_PERSON_FILTERS = ['name' 'age']
这是用于A选项卡
this.MGridFilter = {
ftype : 'filters',
encode : true, // json encode the filter query
local : true, // defaults to false (remote filtering)
filters : [
{
type : 'list',
dataIndex : 'endview',
options : Indigo.GLOBAL_PERSON_FILTERS
},
也为Tab B复制了相同的内容,但选项名称已更改
GLOBAL_TEST_PERSON_FILTERS = ['designation' 'company']
this.MGridFilter = {
ftype : 'filters',
encode : true, // json encode the filter query
local : true, // defaults to false (remote filtering)
filters : [
{
type : 'list',
dataIndex : 'endview',
options : Indigo.GLOBAL_TEST_PERSON_FILTERS
},
但是我面临的问题是当我检查选项卡B选项卡A中的过滤器时也受到影响
请帮助我解决这个问题
答案 0 :(得分:0)
如果在同一商店上使用过滤器,则它总是会受到影响(将在何处使用过滤器没有区别)。 您可以使用Tab B上的Ext.data.ChainedStore来复制Tab A上的副本存储(过滤器链式存储不会影响Tab A上的Store)。
它看起来像:
Ext.create('Ext.data.ChainedStore', {
source: TabA.Store // Here store from tab A
});