- 浏览: 340229 次
- 性别:
- 来自: 广州
文章分类
最新评论
=====================================================
goods.json,数据库返回的数据:
{
success: true,
results: [
{id: 1, name: '商品007', bm: '2001123456'},
{id: 2, name: '商品008', bm: '2001123457'}
]
}
=====================================================
Model层:
GoodsStore.js:
/*
*商品store
*/
Ext.define('keel.store.GoodsStore', {
extend: 'Ext.data.Store',
model: 'keel.model.GoodsModel',
autoLoad: true,
proxy: {
type: 'ajax',
api: {
read: 'app/goods.json' //只是一个数据接口,可以按需改变
},
reader: {
type: 'json',
root: 'results',
successProperty: 'success'
}
}
});
GoodsModel.js:
/*
商品的model层
*/
Ext.define('keel.model.GoodsModel', {
extend: 'Ext.data.Model',
fields: ['id', 'name', 'bm']
});
=====================================================
view层:
GoodsListView.js:
/*!
* 商品view层,这里只是一个负责显示的grid,没有逻辑代码
*/
Ext.define('keel.view.goods.GoodsListView' ,{
extend: 'Ext.grid.Panel',
alias : 'widget.goodslistview',
title : '商品列表',
store: 'GoodsStore',
columns: [
{header: '商品编码', dataIndex: 'bm'},
{header: '商品名称', dataIndex: 'name'}
],
tbar : [
{text:'测试1',action:'testBtn1'},'-',
{text:'测试2',action:'testBtn2'},'-'
]
});
GoodsWinView.js:
这里只是一个负责显示的窗口
*/
Ext.define('keel.view.goods.GoodsWinView', {
extend: 'Ext.window.Window',
alias : 'widget.goodswinview',
title : '测试',
autoShow: false,
height: 200,
width: 300,
initComponent: function() {
this.buttons = [
{
text: '点我改变标题',
scope: this,
action: 'ok'
},
{
text: '关闭',
scope: this,
handler: function(){
this.close();
}
}
];
this.callParent(arguments);
}
});
=====================================================
controller层:
GoodsCtrl.js
/*
商品控制层,
所有逻辑代码都在这里写
*/
Ext.define('keel.controller.GoodsCtrl', {
extend: 'Ext.app.Controller',
stores: ['GoodsStore'],//声明该控制层要用到的store
models: ['GoodsModel'],//声明该控制层要用到的model
views: ['goods.GoodsListView','goods.GoodsWinView'],//声明该控制层要用到的view
refs: [//相当于一个映射,这样就可以在控制层方便的通过geter取得相应的对象了
{
ref: 'goodslistview',
selector: 'goodslistview'
},
{
ref: 'goodswinview',
selector: 'goodswinview'
}
],
init: function() {
this.control({//这里的this相当于这个控制层
'viewport > goodslistview': {
afterrender: function(gp){//侦听goodslistview渲染
gp.down('button[action=testBtn1]').on('click',function(){
//侦听goodslistview工具条上action=testBtn1的按钮单击事件
this.showWin();
},this);
gp.down('button[action=testBtn2]').on('click',function(){
//侦听goodslistview工具条上action=testBtn2的按钮单击事件
alert(this.getGoodslistview().title)
},this);
}
},
'goodswinview button[action=ok]': {
//侦听goodswinview中action=ok的按钮单击事件
click: function(){
this.getGoodswinview().setTitle(Ext.util.Format.date(new Date(),'Y-m-d H:i:s'));
}
}
});
},
showWin : function(){
Ext.create('keel.view.goods.GoodsWinView').show();
}
});
=====================================================
app.js:
Ext.Loader.setConfig({enabled:true});//开启动态加载
Ext.application({
name: 'keel',//为应用程序起一个名字,相当于命名空间
controllers: [//声明所用到的控制层
'GoodsCtrl'
],
launch: function() {//开始
Ext.create('Ext.container.Viewport', {
layout: 'fit',
items: [
{
xtype: 'goodslistview'
}
]
});
}
});
=====================================================
index.jsp:
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>Ext4Mvc</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<link rel="stylesheet" href="lib/resources/css/ext-all.css" type="text/css"></link>
<script type="text/javascript" src="lib/ext-all.js"></script>
<script type="text/javascript" src="app/app.js"></script>
</head>
<body>
</body>
</html>
发表评论
-
EasyUI和EasyUI桌面App
2013-04-15 11:56 1196http://fxz-2008.iteye.com/blog/ ... -
Jquery进度条
2013-04-12 09:08 870http://www.cnblogs.com/lhb25/ h ... -
11个适合触摸事件开发的JavaScript库
2013-04-10 09:23 810http://www.codecto.com/2012/08/ ... -
Jquery插件
2013-03-22 18:33 785http://www.cnblogs.com/ywqu/arc ... -
宝贝鱼
2013-03-18 23:54 686http://code.google.com/p/cshbbr ... -
HTML&JS MVC
2013-03-15 16:27 621http://www.bootcss.com/ http:// ... -
浏览器内核及Js引擎介绍
2013-03-15 16:18 741http://wenku.baidu.com/view/623 ... -
EXTJS Demo
2013-03-12 17:19 790http://web230531.host89.chinajs ... -
网站架构和两个3d技术
2013-01-17 16:52 0http://blog.csdn.net/lovingprin ... -
DWR数据反推实例
2013-01-16 16:42 1419http://blog.sina.com.cn/s/blog_ ... -
javascript调用服务端方法
2012-12-17 22:03 939http://www.php100.com/html/webk ... -
DWR推送技术
2012-12-13 16:13 10638DWR2.x的推技术也叫DWR Reverse Ajax(逆向 ... -
wireshark 协议过滤
2012-10-09 11:32 1633http://blog.csdn.net/cumirror/a ... -
一个很不错的Javascript绘图库
2012-09-27 17:18 0http://www.jgraph.com/ http://w ... -
dwr推送数据
2012-09-21 16:59 0Dwr数据推技术:http://blog.csdn.net/k ... -
Extjs4 Css美工相关
2012-09-03 10:39 2988转: http://www.sencha.com/lear ... -
Extjs下拉树组件
2012-09-03 09:40 976转: http://www.2cto.com/kf/20120 ... -
Javascript基础一(apply, call, arguments, prototype)
2012-08-22 22:42 1074//javascript: apply, call, argu ... -
Extjs4的事件实例
2012-08-09 09:11 808http://www.cnblogs.com/luluping ... -
EXTJS中的Store是如何工作的
2012-08-08 21:04 964http://idoa3l3x.blogbus.com/log ...
相关推荐
Extjs4 MVC开发笔记源码,此源码已经将命名空间修改为Soyi,由于涉及到一些公司信息,将所有数据库中的数据清除,由于时间仓促。只有备案管理的grid是可以使用的,其他的功能,按照备案管理的文件照猫画虎即可实现。 ...
extJS4 MVC demo项目入门涉及的是前端开发领域的技术要点,主要介绍了extJS4框架中的MVC(Model-View-Controller)模式在实际开发项目中的应用方法,并着重讲述了如何实现前端资源的按需加载和动态加载。在了解这些...
4. MVC 的优点 - 代码组织清晰,便于维护和扩展。 - 提供了数据绑定机制,使视图能自动响应模型的改变。 - 提高了开发效率,通过解耦模型、视图和控制器,可以独立地开发和测试各个部分。 5. 进阶使用 - 使用 ...
这个“Extjs4 MVC小实例”很可能是为了展示如何在实际项目中有效地运用MVC模式。 **模型(Model)** 在ExtJS 4的MVC中,模型负责管理应用程序的数据。模型类通常与后端服务器的数据接口进行交互,处理数据的加载、...
ExtJS 4 MVC是一个强大的JavaScript框架,用于构建富客户端应用程序。这个"extjs4Mvc"事例提供了关于如何在ExtJS 4中有效地利用MVC(Model-View-Controller)设计模式的详细教程。MVC模式是软件工程中常用的设计模式...
在ExtJS 4中,MVC(Model-View-Controller)设计模式是其核心架构,用于组织和管理应用程序的逻辑。这个官方实例集是ExtJS 4 MVC模式的一个完整展示,旨在帮助开发者理解并掌握如何使用MVC进行开发。 **MVC模式详解...
ExtJS 4 MVC 是一种基于 Sencha ExtJS 框架的前端开发模式,用于构建交互性强、功能丰富的Web应用程序。在"extjs4mvc的crud"这个主题中,我们将深入探讨如何使用ExtJS 4的Model-View-Controller(MVC)架构来实现...
MVC(Model-View-Controller)模式是软件设计中的一个经典模式,它在ExtJS4中被广泛应用,以实现可维护性和可扩展性的增强。这个"ExtJS4 MVC演示项目"是一个很好的学习资源,可以帮助开发者了解如何在实际应用中组织...
本实例是针对新手级别的学习资料,旨在帮助初学者理解并掌握ExtJS4中的MVC模式。 MVC模式是一种软件设计模式,它将应用程序分为三个核心部分:模型(Model)、视图(View)和控制器(Controller)。在ExtJS4中,这...
本项目"springmvc+extjs4mvc实现权限管理"是利用SpringMVC框架和ExtJS4MVC技术来搭建一个完整的权限控制系统,旨在提供精细的用户、角色和资源的权限分配。 首先,SpringMVC作为Java Web开发中的主流MVC框架,以其...
本例采用ASP.NET MVC3 +EXTJS4 MVC 框架,完美实现了EXTJS4动态加载JS文件,对ASP.NET MVC3及EXTJS4 MVC 各应用要点进行了应用。对于想采用ASP.NET MVC3 +EXTJS4 MVC 框架的学习者有很好的帮助,快速掌握MVC框架,本...
在"Extjs4 mvc+struts 应用例子"中,我们看到的是一个利用这两者技术实现的网格(grid)功能。Grid是ExtJS中的核心组件之一,用于展示大量结构化的数据,并支持排序、筛选、分页等功能。在这个例子中,我们将学习...
ExtJS 4 MVC是一个强大的前端开发框架,它利用模型-视图-控制器(Model-View-Controller)架构模式,帮助开发者构建复杂、可维护的Web应用程序。MVC是一种设计模式,它将应用程序的不同部分分离出来,使代码更易于...
ExtJS 4 MVC Skel Master 是一个基于ExtJS 4框架的MVC(Model-View-Controller)架构的项目模板,适用于快速构建复杂的Web应用程序。这个压缩包包含了一个基础的MVC项目结构,帮助开发者更好地理解和应用ExtJS的MVC...
ExtJs 4 用了一段时间了,今天研究了下ExtJs4的MVC机制,感觉还挺好,建议大家尝试,所以就写了一个demo,帮助那些对ExtJs还不是很懂,或者想用ExtJs4却又不知道怎么做好的朋友。。。多余话不说了大家如果有什么不...
《Extjs4 MVC模式浅析》 Extjs4在开发大型客户端程序时,引入了MVC(Model-View-Controller)架构,以解决代码组织和维护的难题。MVC架构是一种设计模式,它将应用程序分为三个主要部分:模型(Model)、视图(View...
《ExtJS4 MVC后台管理程序实现详解》 ExtJS是一个强大的JavaScript前端框架,它提供了丰富的组件库和MVC(Model-View-Controller)设计模式,用于构建复杂的Web应用程序,特别是后台管理系统。本篇将深入探讨如何...
《ExtJS4 MVC后台管理程序实现》 ExtJS4是一个强大的JavaScript前端框架,它采用Model-View-Controller(MVC)设计模式,使得构建复杂的Web应用程序变得更加容易和高效。MVC模式是软件工程中的一种设计模式,它将...
springmvc+hibernate+extjs4mvc 权限管理springmvc+hibernate+extjs4mvc 权限管理springmvc+hibernate+extjs4mvc 权限管理