• Sencha Touch学习使用心得 Unit 3


    继续我们的征途......

    本文介绍Model和Store的详细使用.Model和Store是要配合使用的好基友。

    我们来运用Model和Store来修改一下查询页面的页面效果:即下图

    Chapter 1:创建Model

        Model类似实体,继承在Ext.data.Model下,配置fields:字段 属性

    Ext.define('ST.model.Unit', {
        extend: 'Ext.data.Model',
        config: {
            //identifier:"uid",
            fields: [
        {
            name: 'sid',
            type: 'string'
        }, {
            name: 'unit',
            type: 'string'
    }]
    
        }
    });

    Chapter 2:配置Store

        Store继承在Ext.data.Store下,Store就是数据源,如有Extjs基础就方便理解,既可以后台赋予数据,也可本地配置数据

    咱们查询页面要做的Selected样式就需要本地Store数据.

        在配置config里,必须要指定Model,才能配合使用,配置storeid才能方便查找使用.在data中配置里本地数据,稍后会演示异步获取数据的案例

    Ext.define('ST.store.Units', {
        extend: 'Ext.data.Store',
        config: {
        model: 'ST.model.Unit',
            storeId: 'units',
            data: [{
                sid:'1',
                unit: '单号'
            },
            {
                sid: '2',
                unit: '手机号'
            },
            {
                sid: '3',
                unit: 'AppleID'
            },
            {
                sid: '4',
                unit: '序列号'
    }]
            }
    
        });

    Chapter 3:前台页面展示

        将原来的两个文本框注释,换成SelectFied组件(其他数据组件也可以).SelectFied数据源指定StoreId,其他配置都能看懂吧

    Ext.define('ST.view.query', {       //创建视图
        extend: 'Ext.form.Panel',//继承在Ext.form.Panel下
        config: {
            tabBar: {
                ui: "neutral",
                layout: {
                    pack: "center"
                }
            },
            fullscreen: true,
            id: "queryForm",
            items: [
            {
                xtype: 'titlebar',
                docked: 'top',
                title: '查询页'
            },
            { xtype: "spacer", height: 30 },
            {
                xtype: "fieldset",
                title: " ",
                instructions: "Please enter your info.",
                defaults: {
                    labelWidth: '35%'
                },
                items: [
                {
                    xtype: 'selectfield',
                    name: 'unit',
                    itemId: 'sid',
                    label: '查询类型',
                    valueField: 'unit',
                    displayField: 'unit',
                    store: 'units',
                    queryMode: 'local'
                },
            {
                xtype: 'textfield',
                border: 1,
                id: "login_info",
                placeHolder: "请输入查询信息",
                label: '查询信息'
            },
    //                            {
    //                            xtype: 'textfield',
    //                            id: "login_phonenum",
    //                            placeHolder: "请输入手机号",
    //                            label: '手机号'
    //                        },
    //                        {
    //                            xtype: 'textfield',
    //                            border: 1,
    //                            id: "login_appleid",
    //                            placeHolder: "请输入AppleID",
    //                            label: 'AppleID'
    //                        }
    ]
            },
            { xtype: "spacer", height: "4px" }, {
                xtype: 'button',
                itemId: 'btnQuery',
                text: '查询'
            },
                        {
                            xtype: 'toolbar',
                            docked: 'bottom',
                            items: [{
                                xtype: 'spacer'
                            }
                            ]
    }]
        }
    });

    运行结果......就是第一个图

  • 相关阅读:
    linux入门学习
    qt 常见问题记录
    我今年,二十七八岁了
    C#程序如何实现设置系统WIFI共享
    主界面设计(收集)
    Qt中如何添加ICON图标
    系统登录界面(收集)
    Qt类型转换
    qt 系统设计对比
    Qt中丰富的容器类数组QVector、链表QLinkedList、映射表QMap、哈希表QHash
  • 原文地址:https://www.cnblogs.com/gkjbest/p/3471387.html
Copyright © 2020-2023  润新知