http://xiebaochun.github.io/

app.js

[javascript] view
plain
copyprint?

  1. Ext.onReady(function(){
  2. Ext.QuickTips.init();
  3. Ext.Loader.setConfig({  //开启自己主动载入功能
  4. enabled:true
  5. });
  6. Ext.application({
  7. name:'AM',      //自己定义命名空间。通常都定义为AM
  8. appFolder:'app',  //配置Ext框架所在的文件文件夹
  9. launch:function(){   //在全部资源都加载成功后执行
  10. Ext.create('Ext.container.Viewport',{
  11. items:{
  12. width:1500,
  13. height:500,
  14. xtype:'mainlayout' //这里引用了自己定义的组件mainlayout(视图层的MainLayout的别称)
  15. }
  16. });
  17. },
  18. controllers:[  //载入全部的控制器
  19. 'UserController'
  20. ]
  21. });
  22. });

控制层:

UserController.js

  1. Ext.define('AM.controller.UserController',{
  2. extend:'Ext.app.Controller',//继承Ext.app.Controller类
  3. init:function(){
  4. this.control({   //控制事件处理
  5. 'userlist button[id=add]':{
  6. click:function(){
  7. //do something
  8. }
  9. }
  10. });
  11. },
  12. views:[
  13. 'UserList',   //放在MainLayout之前载入
  14. 'DeptList',
  15. 'MainLayout'
  16. ],
  17. stores:[
  18. 'UserStore',
  19. 'DeptStore'
  20. ],
  21. models:[
  22. 'UserModel'
  23. ]
  24. });

Model层:

UserModel.js

[javascript] view
plain
copyprint?

  1. Ext.define('AM.model.UserModel',{
  2. extend:'Ext.data.Model',  //用来绑定到grid表字段
  3. fields:[
  4. {name:'id',type:'string'},
  5. {name:'name',type:'auto'},
  6. {name:'password',type:'string'},
  7. {name:'birth',type:'auto'},
  8. {name:'email',type:'auto'},
  9. {name:'intro',type:'string'}
  10. ]
  11. });

Store层:

UserStore.js

[javascript] view
plain
copyprint?

  1. Ext.define('AM.store.UserStore',{
  2. extend:'Ext.data.Store',
  3. model:'AM.model.UserModel',
  4. proxy:{
  5. type:'ajax',
  6. url:'/ExtjsTest/test/readuser',
  7. reader:{
  8. type:'json',
  9. root:'userinfo'
  10. },
  11. writer:{
  12. type:'json'
  13. }
  14. },
  15. autoLoad:true
  16. });

DeptStore.js

[javascript] view
plain
copyprint?

  1. Ext.define('AM.store.DeptStore',{
  2. extend:'Ext.data.TreeStore',
  3. defautRootId:'root',
  4. proxy:{
  5. type:'ajax',
  6. url:'/ExtjsTest/test/showuser',
  7. reader:{
  8. type:'json'
  9. },
  10. writer:{
  11. type:'json'
  12. }
  13. },
  14. autoLoad:true
  15. });

视图层:

UserList.js

[javascript] view
plain
copyprint?

  1. Ext.define('AM.view.UserList',{
  2. extend:'Ext.grid.Panel', //GridPanel组件
  3. alias:'widget.userlist', //别名
  4. //  title:'用户信息',
  5. width:500,
  6. height:500,
  7. store:'UserStore',  //绑定UserStore数据集
  8. selModel:{
  9. selType:'checkboxmodel'
  10. },
  11. tbar:[{text:"加入",id:'add'},{text:'删除',id:'del'},{text:'保存',id:'save'}],  //button事件在控制层写
  12. columns:[{header:'编号',dataIndex:'id',field:{xtype:'textfield',allowBlank:false}},
  13. {header:'姓名',dataIndex:'name',field:{xtype:'textfield',allowBlank:false}},
  14. {header:'密码',dataIndex:'password',field:{xtype:'textfield',allowBlank:false}},
  15. {header:'生日',dataIndex:'birth',field:{xtype:'datefield',allowBlank:false}},
  16. {header:'邮件',dataIndex:'email',field:{xtype:'textfield',allowBlank:false}},
  17. {header:'简单介绍',dataIndex:'intro',field:{xtype:'textfield',allowBlank:false}}],
  18. ]
  19. });

DeptList.js

  1. Ext.define('AM.view.DeptList',{
  2. extend:'Ext.tree.Panel',  //TreePanel组件
  3. alias:'widget.deptlist',
  4. //  title:'树',
  5. width:300,
  6. height:500,
  7. rootVisible:false,
  8. dockedItems:[{
  9. xtype:'toolbar',
  10. dock:'left',
  11. items:[
  12. {xtype:'button',text:'add',id:'add'},
  13. {xtype:'button',text:'delete',id:'del'},
  14. {xtype:'button',text:'copy',id:'copy'}
  15. ]
  16. },
  17. store:'DeptStore',  //绑定DeptStore数据集
  18. }
  19. });

效果图:


版权声明:本文博客原创文章,博客,未经同意,不得转载。

Extjs4.1MVC详细解释的更多相关文章

  1. .htaccess语法之RewriteCond与RewriteRule指令格式详细解释

    htaccess语法之RewriteCond与RewriteRule指令格式详细解释 (2012-11-09 18:09:08) 转载▼ 标签:  htaccess it 分类: 网络 上文htacc ...

  2. cookie的详细解释

    突然看到网页上中英文切换的效果,不明白怎么弄得查了查 查到了cookie 并且附有详细解释 就copy留作 以后温习 http://blog.csdn.net/xidor/article/detail ...

  3. tar命令的详细解释

    tar命令的详细解释 标签: linuxfileoutputbashinputshell 2010-05-04 12:11 235881人阅读 评论(12) 收藏 举报  分类: linux/unix ...

  4. Linux学习笔记15——GDB 命令详细解释【转】

    GDB 命令详细解释 Linux中包含有一个很有用的调试工具--gdb(GNU Debuger),它可以用来调试C和C++程序,功能不亚于Windows下的许多图形界面的调试工具. 和所有常用的调试工 ...

  5. C语言 - 结构体(struct)比特字段(:) 详细解释

    结构体(struct)比特字段(:) 详细解释 本文地址: http://blog.csdn.net/caroline_wendy/article/details/26722511 结构体(struc ...

  6. 姿势体系结构的详细解释 -- C

    我基本上总结出以下4部分: 1.问题的足迹大小. 2.字节对齐问题. 3.特别保留位0. 4.这种结构被存储在存储器中的位置. #include <stdio.h> #include &l ...

  7. Java - 面向对象(object oriented)计划 详细解释

    面向对象(object oriented)计划 详细解释 本文地址: http://blog.csdn.net/caroline_wendy/article/details/24058107 程序包括 ...

  8. 设计模式 - 迭代模式(iterator pattern) Java 迭代器(Iterator) 详细解释

    迭代模式(iterator pattern) Java 迭代器(Iterator) 详细解释 本文地址: http://blog.csdn.net/caroline_wendy 參考迭代器模式(ite ...

  9. 设计模式 - 观察者模式(Observer Pattern) 详细解释

    观察者模式(Observer Pattern) 详细解释 本文地址: http://blog.csdn.net/caroline_wendy/article/details/26583157 版权全部 ...

随机推荐

  1. VS2013验证控件出现 WebForms UnobtrusiveValidationMode 必须“jquery”ScriptResour......错误的解决方案

    如下面的错误: 解决方式例如以下: 方法一: 在webconfig中找到 <appSettings> <addkey="aspnet:UseTaskFriendlySync ...

  2. 使用python+django+twistd 开发自己的操作和维护系统的一个

    许多开源操作系统和维护系统,例nagios.zabbix.cati等等,但是,当他们得到的时间自己的个性化操作和维护需求,始终无力! 最近的一项研究python.因此,我们认为python+djang ...

  3. 乐在其中设计模式(C#) - 命令模式(Command Pattern)

    原文:乐在其中设计模式(C#) - 命令模式(Command Pattern) [索引页][源码下载] 乐在其中设计模式(C#) - 命令模式(Command Pattern) 作者:webabcd ...

  4. MongoDB学习笔记-维护

    主从复制 MongoDB有主从复制技术,解决高可用和容灾问题,也就是备份. 配置主从的特点: N 个节点的集群 任何节点可作为主节点 所有写入操作都在主节点上 自动故障转移 自动恢复 数据分布式存储 ...

  5. 开源NetWorkSocket通讯组件

    开源NetWorkSocket通讯组件   前言 在<化茧成蝶,开源NetWorkSocket通讯组件>发表之后,收到大家很多个star,在此感谢!更可贵的是,一些网友提出了许多好建议,经 ...

  6. docker 真实---安装基本映像 (一)

    浸泡了几天的官方网站,正确docker有了更好的理解.准备着手建立一个公司的开发和测试环境,包含java.python. 环境介绍 首先说明一下我的环境 2物理server(以后简称为主机) 主机A配 ...

  7. memcached 实验论文

    虽然在这个年龄段谈话memcached 它可能是一个有点晚,最为cached 在应用程序中redis 在之上,下面将谈谈自己的一些看法, 这个文件是不是memcached 理论描述,只写的实验数据和结 ...

  8. Swift继承

    //声明一个基类 class vehicle { var maxPassenger : Int = 0 var manufacturer : String! func description() -& ...

  9. Eclipse+超快速的模拟器Genymotion开展Android申请书(第一步:安装和配置Genymotion)

    一.安装和配置Genymotion (1)因为Eclipse自带SDK模拟器,慢启动,别说 今天给大家介绍一个更快速的模拟器Genymotion (2)第一次去Genymotion在官方网站上注册一个 ...

  10. java中float/double浮点数的计算失精度问题(转)

    如果我们编译运行下面这个程序会看到什么? public class Test  {    public static void main(String args[]) {                ...