ExtJs中Store简介(秘籍)

1.什么store?

Store类似于一个本地仓库(即数据存储器),包括有 ArrayStore,DirectStore,GroupingStore,JsonStore,XmlStore(都是store的子类)
最终主要用于提供给panel去显示.
Store由Proxy(数据源)和DataReader(解读数据)组成。
一.(Proxy)数据源:一般是后台的值,习惯性的把它转换成json对象给store(注:个人理解)
二.(DataReader)读取数据:获得了数据后需要解析数据,DataReader(fields属性其实是Record对象的)解析数据并指定格式.
三.store存储好的数据最后交给panel

2.store中重要的属性和方法
属性:data、proxy、reader、url、root ....
方法:load
1、如果配置了data,则proxy和url无效,且不需要调用load方法来生成Record集合

view source print?
1.var store=new Ext.data.ArrayStore({
2.        fields: ['DEPTNO', 'DNAME', 'LOC'],
3.        data:Ext.datas.mess  //引用data.js 数据
4.        });

2、如果没有配置data,则必须设置proxy或url,或两者都设置。此时,如果没有将autoLoad设置为true,
那么需要手动进行load方法的调用。就是为了得到数组、Json或Xml等格式的数据。

view source print?
01.//JsonStore是负责后台返回json对象的处理http://
02.    var store1 = new Ext.data.JsonStore({
03.        autoDestroy: true,
04.        url: 'extjsTest/extjs_getEmpByDeptNo.action',
05.        storeId: 'myStore',
06.        root:"emp",//json对象组 类似这种对象:{emp:[{EMPNO:'xx',....}]}
07.        fields: [
08.            {name: 'EMPNO', mapping:'EMPNO', type: 'float'},
09.            {name: 'ENAME', mapping:'ENAME',type: 'string'},
10.            {name : 'HIREDATE', type : 'date', mapping : 'HIREDATE'},
11.            {name: 'DEPTNO', mapping:'DEPTNO', type: 'float'}
12.        ]
13.    });

3、reader是必须的,用以指定数据解析器,
需要根据获得的数据格式指定相应类型的解析器。(上面简写了,其实fidlds是由DataReader对象创建Record实例的一个属性)
4、如果没有指定proxy,但指定了url,则会默认用HttpProxy作为数据源,并将url作为HttpProxy实例化时的参数。

view source print?
1.var myStore = new Ext.data.Store({
2.    reader: myReader,
3.    proxy : new Ext.data.HttpProxy({
4.        method: "POST",
5.        url: 'extjsTest/extjs_getEmpByDeptNo.action',
6.    })
7.});

5、root是指定json组(个人这样理解的),算了,看json传过来的对象应该清楚了

view source print?
1.{emp:[{"EMPNO":7369,"HIREDATE":"1980-12-17","ENAME":"SMITH"},{"EMPNO":7499,"HIREDATE":"1981-02-20","ENAME":"ALLEN"},{"EMPNO":7521,"HIREDATE":"1981-02-22","ENAME":"WARD"},{"EMPNO":7566,"HIREDATE":"1981-04-02","ENAME":"JONES"},{"EMPNO":7654,"HIREDATE":"1981-09-28","ENAME":"MARTIN"}]}

store.load() 代表加载数据store中的数据...(具体看api文档,武功秘籍下载地址:http://extjs.org.cn/download/)

ExtJs中Store简介(秘籍)相关推荐

  1. 对Extjs中store的多种操作

    先来个声明,看着不错,贴过来的,没都测试过. Store.getCount()返回的是store中的所有数据记录,然后使用for循环遍历整个store,从而得到每条记录. 除了使用getCount() ...

  2. extjs中Store和grid的刷新问题

    问题1:Store.load() 和Store.setproxy()区别 问题2:修改后的Grid 更新: Store.reload() 问题3,store删除后刷新会出问题 Store移除一行:St ...

  3. extjs中store的reload事件异步问题解决

    转载自:http://blog.sina.com.cn/s/blog_8f8b7fc10100zd75.html store0.reload({params:{start:0, limit:10}}) ...

  4. extjs中store获取后台数据_Excel实战技巧64: 从工作簿中获取数据(不使用VBA)

    学习Excel技术,关注微信公众号: excelperfect 这是在研读<Escape From Excel Hell>时学到的技术,从本工作簿中或者其他工作簿中获取所需要的数据,以便于 ...

  5. extjs中元数据_Extjs中Store小总结

    http://blog.csdn.net/without0815/article/details/7798170 1.什么是store? Store类似于一个本地仓库(即数据存储器),包括有 Arra ...

  6. vuex结合php,vuex中store的使用介绍(附实例)

    本篇文章给大家带来的内容是关于vuex中store的使用介绍(附实例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 一.状态管理(vuex)简介 vuex是专为vue.js应用程序 ...

  7. Extjs中给同一个GridPanel中的事件添加参数的方法

    Extjs中给同一个GridPanel中的事件添加参数的方法: this.isUse = new Ext.Action({             text:'启用',             sco ...

  8. Extjs中三种不同的数据提交方式

    Extjs中三种不同的数据提交方式 Extjs的三种提交方式: 表单Ajax提交,普通提交,单独Ajax提交: 1.表单ajax提交(默认提交方式) 提交函数:当按下表单中的提交按钮时执行下面的btn ...

  9. [转]ExtJs中使用中碰到的三个问题的解决方法

    这里的经验不是指对这种框架总体上面的一些介绍,只是记录了本月中使用ExtJs中遇到的3个问题的解决方法,这里还是要感谢Extjs论坛的 Animal和Condor,每次在我遇到拦路虎的时候,总能在他俩 ...

最新文章

  1. 区块链应用 | 用区块链颠覆视频直播,与视频卡顿、缓冲说再见!
  2. 怎么计算网站高峰期并发量和所需的带宽?
  3. 新模型SkipNet在ImageNet分类任务大放光彩!优化损失函数!
  4. Leetcode——连续子数组的最大和(剑指offer 42)
  5. 两种方案的demo示例
  6. vue中axios访问Java后端跨域问题解决
  7. Ubuntu图形界面更改软件下载源为清华镜像站以及解决等待apt退出的问题
  8. Log4j2 Zero Day 漏洞 Apache Flink 应对指南(二)
  9. unity3d大型互动照片墙
  10. 小白的linux练习(一)
  11. 从石器时代到硅器时代
  12. python数据清洗工具、方法、过程整理归纳(六、数据清洗之数据预处理(一)——重复值处理、缺失值处理)
  13. opencv h264压缩视频
  14. MacBook安装Golang Oracle数据库驱动程序
  15. C语言后缀.h文件和.c文件作用和区别
  16. JDBC批量插入sql-踩坑笔记
  17. SimpleDateFormat.parse()方法中的时区设置缺陷
  18. 计算机的英文怎么说不是computer,【英语写作】“开电脑”可不是“open the computer”,说错了很尴尬!...
  19. IE浏览器无法上网设置
  20. CMMI之度量与分析(MA)

热门文章

  1. poll/epoll/keyed-poll/keyed-epoll的唤醒--分层次的解决方案
  2. 关于数组方面的算法分析
  3. sqlserver 遇到以零作除数错误的处理 不报错的解决方法
  4. 图像处理相关知识(不断更新)
  5. 正则表达式——获取指定IP的物理地址(二)
  6. 一个Web开发的客户端基础技术测试Demo
  7. 容器编排技术 -- Kubernetes kubectl scale 命令详解
  8. Docker Compose运行MySQL、Redis服务
  9. 全面、详细的前端组件库
  10. Mac如何搭建 配置 虚拟机环境 virtualenv python虚拟环境