extjs修改treestore对象属性值,怎么把记录写在修改的结果集中
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了extjs修改treestore对象属性值,怎么把记录写在修改的结果集中相关的知识,希望对你有一定的参考价值。
参考技术A Ext的帮助中写明了给treeStore绑定数据有两种方式,一种是root属性,code如下:root:
expanded: true,
text: "My Root",
children: [
text: "Child 1", leaf: true ,
text: "Child 2", expanded: true, children: [
text: "GrandChild", leaf: true
]
]
这种方式只能添加Tree格式的数据,但是如果想要添加TreeGrid格式的数据就不行了,所以Pass。
Extjs TreeStore,多个异步请求,treepanel渲染错位
【中文标题】Extjs TreeStore,多个异步请求,treepanel渲染错位【英文标题】:Extjs TreeStore, more than one asynchronous requests, treepanel rendering dislocation 【发布时间】:2019-12-02 17:31:47 【问题描述】:我的 extjs 版本是 6.5,我创建了一个 treepanel 和 GridPanel。当我点击GridPanel中的记录时,会触发treepanel的treeStore来加载数据。如果我单击第一条记录,TreeStore 会加载更多数据并变慢,但我已经单击了第二条记录。同时,第二次点击请求已经响应。因此,treepanel 会渲染第一次点击的响应数据。
Ext.data.store 没有这个问题。我该如何解决这个问题?
【问题讨论】:
你能制作一个小提琴 (fiddle.sencha.com) 来演示这个问题吗?我们确实需要查看代码和事件处理程序以了解发生了什么。 【参考方案1】:你可以在 treestore 上监听 load 事件 https://docs.sencha.com/extjs/6.5.3/modern/Ext.data.Store.html#event-load
并切换 grid.disableSelection(true);基于选择状态 https://docs.sencha.com/extjs/6.5.3/modern/Ext.grid.Grid.html#cfg-disableSelection
【讨论】:
是的,我在grid beforeselect事件前监听,当treestore的isLoading方法返回true时,返回false停止grid的select事件【参考方案2】:不要一次执行多个加载请求。 mask 点击网格,unmask 加载商店时。
【讨论】:
以上是关于extjs修改treestore对象属性值,怎么把记录写在修改的结果集中的主要内容,如果未能解决你的问题,请参考以下文章
为啥 Extjs 4.0.7 TreeStore 会自动调用 http delete 方法?
如何在 extjs 4 (mvc) 中过滤静态 treeStore
Extjs TreeStore,多个异步请求,treepanel渲染错位