在ExtJS中,构造一个树形结构变得很简单。

  需要用到的:

    Ext.tree.Panel

      TreePanel提供树形结构的UI表示的树状结构数据。 一个TreePanel必须绑定一个Ext.data.TreeStore。TreePanel通过columns配置,支持多列。

    Ext.data.TreeStore

      TreeStore是一个允许内嵌数据的存储区实现。

      它为加载节点提供了一些方便的方法, 并能够使用分层树状结构来结合一个store。 此类也可以方便的从Tree中进行传播一些事件。

  此外,还有能用到的一些配置属性:

    Ext.data.TreeStore:

      expanded: true/false  //用来设置文件夹默认展开(true)或者收缩(false),默认为false

      root: {}         //根节点,节点设置的开始

      children: [{},{}]     //子节点的开始

      leaf: true/false      //用来辨识该文件是否还有子节点,从而判断是否为本节点渲染展开图标或箭头。true为没有子节点,默认为flase

    Ext.tree.Panel:

      store: store      //该树结构关联的数据store

      rootVisible: true/false //是否隐藏根节点

  其他诸如"width"、"height"、margin、border、renderTo等皆有的配置属性就不提了。


  接下来,上代码:

Ext.define('My.TreeStore',{
extend: 'Ext.data.TreeStore',
root: {
expanded: true,
children: [
{ text: 'src', expanded: true, children: [
{ text: 'file1',leaf: true },
{ text: 'file2',leaf: true }
]},
{text: 'file', leaf: true}
]
}
}); Ext.define('My.TreePanel',{
extend: 'Ext.tree.TreePanel',
xtype: 'mytreepanel',
width: ,
rootVisible: true,
}); Ext.onReady(function(){
var store = Ext.create('My.TreeStore');
var treepanel = Ext.create('My.TreePanel',{
store: store,
renderTo: Ext.getBody()
});
});

结果:

      


  下一步,通过后台遍历文件目录,然后Extjs向后台发出请求,后台响应回一个JSON格式的数据,再然后生成遍历树,给树添加点击事件,在另一个panel里构建一个资源管理器,点击遍历树的文件夹会在资源管理器里展示文件夹内的所有文件......暂时考虑到这里吧。

最新文章

  1. 使用 CoordinatorLayout 出错 inflating class android.support.design.widget.CoordinatorLayout
  2. Scrapy002-框架安装
  3. 将DataTable导出为Excel C#
  4. AppCan移动平台,开发者是这样用的……
  5. Storm入门教程 第二章 构建Topology[转]
  6. printf不同格式表示法
  7. CSS学习笔记:Media Queries
  8. iOS基础 - Quartz 2D绘图的基本步骤
  9. Activiti(工作流)如何关联业务表
  10. Node.js~在linux上的部署~外网不能访问node.js网站的解决方法
  11. JavaScript、ES5和ES6的介绍和区别
  12. MIME类型解析
  13. oracle优化技巧及实例(总结)
  14. Windows10 Compatibility Telemetry(CompatTelRunner.exe) 占用硬盘100%
  15. Scala中的柯里化
  16. as3 去掉字符串空白问题
  17. springMVC第一天——入门、整合与参数绑定
  18. openfire url get提交 中文乱码问题
  19. 大聊Python----迭代器
  20. python3执行js之pyexecjs

热门文章

  1. 阿里云vsftp安装和简单的配置
  2. CSS与jQuery补漏
  3. WebApi跨域请求
  4. 在ie6下将png24图片透明
  5. NGrinder操作指南
  6. Mysql表操作《一》表的增删改查
  7. “全栈2019”Java第三十七章:类与字段
  8. jquery源码解析:jQuery工具方法Callbacks详解
  9. mycat 1.6.6.1安装以及配置docker 安装mysql 5.7.24 双主多从读写分离主主切换
  10. 不同的color-model