• [转]ExtJs中的Store


    store是一个存储数据对象Model的集合缓存,他可以为extjs的可视化组建提供数据(GridPanel,ComboBox)等

    类结构

    Ext.data.AbstractStore

           Ext.data.Store  没有特殊情况这个类就可以满日常的开发了

                  Ext.data.ArrayStore

                  Ext.data.DirectStore

                  Ext.data.ArrayStore  内置辅助的类

                  Ext.data.JsonStroe   内置辅助的类

           Ext.data.TreeStore

    Ext.data.Store使用

           参数

            autoLoad(Boolean/Object) : 自动加载数据,自动调用load

            data(Array) : 内置数据对象的数组,初始化的是就要被装在

            model(Model): 数据集合相关的模型

            fields(Field):字段的集合,程序会自动生成对于的Model

           方法

            each( Function f, [Object scope] ) : void 变量数据中的Model

    代码举例:

     

    [javascript] view plaincopy
     
    1. Ext.onReady(function(){  
    2. //定义了一个person的model  
    3. //     Ext.define("person",{  
    4. //       extend:"Ext.data.Model",  
    5. //       fields:[  
    6. //        {name:"name"},  
    7. //        {name:"age"}  
    8. //       ]  
    9. //     });  
    10. //创建了一个store数据集  
    11.      var s=new Ext.data.Store({  
    12.         //store可以自己定义fields,省略model  
    13.         fields:[  
    14.           {name:"name"},  
    15.           {name:"age"}  
    16.         ],  
    17.  //如果使用了代理以后,就可以省略store的data属性了  
    18.         proxy:{  
    19.            type:"ajax",  
    20.            url:"person.jsp"  
    21.         }  
    22. //        data:[  
    23. //        {name:"hanhan313",age:23},  
    24. //        {name:"hanhan313",age:22}  
    25. //         ],  
    26.          //model:"person"  
    27.          //autoLoad:true  
    28.      });  
    29. //     s.each(function(model){  
    30. //       //Ext.Msg.alert("title",model.get("name"));  
    31. //     alert(model.get("name"));  
    32. //     });  
    33.      //除了自动加载,也可以手动加载,如果使用了代理的话应该使用手动加载,因为使用自动加载的话,在遍历的使用数据还在异步加载,没有获取到  
    34.      s.load(function(records,operation, success) {  
    35.          Ext.Array.each(records,function(model){  
    36.             alert(model.get("name"));  
    37.          });  
    38.      });  
    39. });  

    person.jsp页面:

     json格式的数据:

    <%

        response.getWriter().write("[{name:'hanhan313',age:26},{name:'hahaha',age:34}]");

    %>

  • 相关阅读:
    逆序对的相关问题:bzoj1831,bzoj2431
    bzoj3211,bzoj3038
    hdu 1179最大匹配
    hdu 3038带权并查集
    poj 1733离散化(map)+并查集
    codeforces 369B
    poj 1456
    POJ 1988相对偏移
    poj 1986tarjan模板题
    poj 1330lca模板题离线算法
  • 原文地址:https://www.cnblogs.com/ling00218077/p/4213901.html
Copyright © 2020-2023  润新知