- 浏览: 88764 次
- 性别:
最新评论
-
JF辰泉:
能不能说一下如何解决弹出页面的隐藏地址栏问题:IE7以上,为了 ...
【转】JS 弹出网页 (不显示地址栏,工具栏) 网页去掉地址栏 -
lzbcrs:
发个完整的行不 误人子弟 简单的demo 还发的不全 无语了
Extjs4 tree右键菜单实现 -
汽车城路:
我怎么用的不行啊
Extjs 处理Session过期的方法 -
hamlzf:
好像不能用啊
Extjs4 tree右键菜单实现 -
ashou1986:
...
Extjs4 tree右键菜单实现
Extjs 角角落落整理(一)MVC模式
Extjs的MVC结构
app
controller
model
store
util
view
app.js
index.html
app是整个项目的根目录
controller放置ext的控制器,处理业务
model放置一些模型,这个与下面的store是关联的(要在contoreller定义)
store放置grid等组件的store(要在contoreller定义)
util放置帮助文件,主要是一些公共方法抽取放到util里面(要在contoreller注明)
view放置视图组件比如window、grid、tree等(要在contoreller定义)
app.js开启动态加载
index.html项目首页
app.js代码示例
组件的命名规范
以view下面的组件为例(store、model、util类似)
现在写一个viewport,viewport是放在view下面的,同时命名要大写,结构:命名空间+文件夹+名字
comtroller写法,我们现在定义SearchController,放在controller下面
comtroller声明了stores、views、models
Extjs的MVC结构
app
controller
model
store
util
view
app.js
index.html
app是整个项目的根目录
controller放置ext的控制器,处理业务
model放置一些模型,这个与下面的store是关联的(要在contoreller定义)
store放置grid等组件的store(要在contoreller定义)
util放置帮助文件,主要是一些公共方法抽取放到util里面(要在contoreller注明)
view放置视图组件比如window、grid、tree等(要在contoreller定义)
app.js开启动态加载
index.html项目首页
app.js代码示例
/** * 应用层 * className:开启动态加载 */ Ext.onReady(function(){ Ext.QuickTips.init();//支持tips提示 Ext.Loader.setConfig( { enabled : true });//意思是开启Ext.Loader Ext.Loader是动态加载的核心 Ext.Loader.setPath('Ext.ux', extPath+'/Extjs4/examples/ux'); Ext.require([ 'Ext.selection.CellModel', 'Ext.grid.*', 'Ext.data.*', 'Ext.util.*', 'Ext.state.*', 'Ext.form.*', 'Ext.ux.CheckColumn' ]); Ext.application({ //命名空间 name: 'LP', //应用的根目录 appFolder : extPath+'/app', autoCreateViewport : true, //声明所用到的控制层 controllers: [ 'LP.controller.LPController' // 'LP.controller.SearchController' ], //当前页面加载完成执行的函数 launch: function() { Ext.override(Ext.view.BoundList,{ onMaskBeforeShow: function(args){ var loadingHeight = this.loadingHeight; this.getSelectionModel().deselectAll(); if(loadingHeight){ this.setCalculatedSize(undefined, loadingHeight); } return this.isVisible(); } }); if(Ext.grid.RowEditor) {//按钮汉化问题 Ext.apply(Ext.grid.RowEditor.prototype, { saveBtnText: '保存', cancelBtnText: '取消', errorsText: '错误信息', dirtyText: '已修改,你需要提交或取消变更' }); } } }); });
组件的命名规范
以view下面的组件为例(store、model、util类似)
现在写一个viewport,viewport是放在view下面的,同时命名要大写,结构:命名空间+文件夹+名字
Ext.define('LP.view.Viewport',{ extend: 'Ext.Viewport', layout: 'border',//viewport 以fit布局 alias:'widget.viewPort',//别名 defaults:{ // bodyStyle:'padding 2px' },//样式 requires : [ 'LP.view.North',//头部区域 'LP.view.West',//左侧树 'LP.view.Center',//中间展示区域 'LP.view.East',//右侧区域 'LP.view.South'//底部footer ], initComponent : function(){ var me = this; Ext.apply(me, { items: [ { xtype: 'box', id:"header-panel", region: 'north', html: '<h1> lindenpat</h1>', height: 30 }, { xtype:'eastPanel' ,margins: '2 5 0 0', }, { xtype:'westPanel' ,margins: '2 0 0 5', },{ xtype:'centerPanel' ,margins: '2 0 0 0', }, { xtype:'southPanel' ,margins: '0 5 5 5', } ] }); me.callParent(arguments); } });
comtroller写法,我们现在定义SearchController,放在controller下面
Ext.define('LP.controller.SearchController',{ extend:'Ext.app.Controller', stores:[// 都是应该空间名称,不能应用的别名 'LP.store.WestTreeStore', ], views:[ 'LP.view.Viewport','LP.view.tree.WestTree', ], models:[ 'LP.model.CenterGridModel' ], refs:[ {ref: 'viewPort',selector:'viewPort'},// viewPort内容 {ref: 'westPanel',selector:'westPanel'},// westPanel内容 {ref: 'westTree',selector:'westTree'},// westTree内容 {ref: 'eastPanel',selector:'eastPanel'},// eastPanel内容 {ref: 'centerPanel',selector:'centerPanel'},// centerPanel内容 {ref: 'centerFormPanel',selector:'centerFormPanel'}, {ref: 'button[id=FormButton1]',selector:'centerPanel > centerFormPanel > button[id=FormButton1]'},// 中间面板 ], GridUtil:Ext.create('LP.util.GridDoActionUtil'), init:function(){ this.control({ 'button[id=logic-add1]':{// 逻辑库 添加 click:function(btnObj){ if (typeof(Ext.getCmp('addLogicWindowId')) == 'undefined') { var win= Ext.create('LP.view.window.AddLogicWindow'); win.show(); }else{ Ext.getCmp('addLogicWindowId').show(); } } } }); } });
comtroller声明了stores、views、models
发表评论
-
Extjs 处理Session过期的方法
2012-07-06 14:34 4758在拦截器中为session过期的请求设置一个应答状态 St ... -
转:ExtJS 4: How to add Tooltip to Grid Header
2012-07-03 18:20 1711This tutorial will walk through ... -
转:struts2拦截器实现权限控制
2012-06-28 13:50 1181在使用struts2框架开发一个办公OA系统时候,需要使用到权 ... -
Extjs 角角落落整理(三)tree的使用
2012-06-26 15:40 1308一:延时加载 定义一个BottomTree Ext.def ... -
Extjs 与 struts2 结合
2012-06-25 11:06 1043实际应用 Extjs4、struts2 Extjs处理业务逻辑 ... -
Extjs 角角落落整理(一)tabpanel title不固定以及title加tooltip
2012-06-25 10:05 2409需求:tabpanel title不固定以及title加too ... -
Extjs4 tree右键菜单实现
2012-05-24 17:58 7881直接上代码 var tree = Ext.create(' ... -
Ext 颜色选择器使用
2012-05-09 11:18 5069直接上代码: Ext.onReady( functio ... -
Ext checkbox的问题
2012-03-23 17:28 968在实际项目中,要求只能通过点击checkbox列才能进行行选择 ... -
Extjs 下拉框错位解决方式
2012-03-20 16:57 1325Extjs 下拉框错位解决方式 错位可参看附件图 {head ... -
Extjs4 生成动态grid
2012-02-24 11:22 2882需求:grid的header不确定,可进行灵活配置 解决方法: ... -
Ext propertygrid用法
2012-02-22 15:04 1516var propertyGrid = new Ext.grid ... -
JAVA中的FILE.SEPARATOR
2012-02-21 16:40 0前些天遇到一个问题,困扰了好久,现在终于解决了。 问题:上传 ... -
<load-on-startup>讲解
2011-12-06 15:58 0有同学对<load-on-startup> n & ... -
jsp页面中的cookie
2011-12-06 13:56 838今天讲到cookie 添加cookie代码 Cookie ... -
servlet乱码
2011-12-06 13:32 850某位同学servlet接受出现的乱码 jsp 是utf-8 s ... -
转载 <context-param>与<init-param>的区别与作用
2011-12-06 11:01 681<context-param>的作用: web.x ... -
web.xml配置context-param
2011-12-06 10:55 860发现某学生在web.xml配置 <context-par ... -
jsp与servlet 概念讲解ServletContext getServletConfig
2011-12-06 10:32 1563getServletConfig() ... -
myeclipse设置提示
2011-12-01 15:25 972有些朋友的MyEclipse,alt+/除了sysout能够提 ...
相关推荐
ExtJS的MVC模式是其框架的核心特性之一,主要用于组织和管理复杂的用户界面代码,确保应用的可维护性和可扩展性。在深入讲解MVC模式之前,先了解一下ExtJS本身。ExtJS是一款基于JavaScript的开源UI库,它提供了一套...
在本工程中,我们将深入探讨ExtJS 4.0的MVC模式,以及如何通过controller、view、model和store来构建应用。 **1. MVC模式** MVC模式是一种软件设计模式,将应用程序分为三个主要组件:模型(Model)、视图(View)...
ExtJS4 + ASP.NET MVC Demo是一个结合了前端ExtJS4框架和后端ASP.NET MVC架构的应用示例,展示了如何在Web开发中实现数据操作的增删改查功能,并且利用了ExtJS4的MVC模式来提高代码的组织性和可维护性。这个Demo还...
只要将解压的文件直接放置到myeclipse的webroot下面,启动tomcat访问。简单的EXTJS mvc框架,设计 store,model,controller,view,window等等,同时展示了一些基本的点击显示、修改等等操作,需要的同学自行下载
extJS4 MVC demo项目入门涉及的是前端开发领域的技术要点,主要介绍了extJS4框架中的MVC(Model-View-Controller)模式在实际开发项目中的应用方法,并着重讲述了如何实现前端资源的按需加载和动态加载。在了解这些...
在这个主题中,我们将深入探讨如何在ExtJS 4.0中结合MVC模式实现动态加载功能。 **MVC模式** MVC模式是一种软件设计模式,它将应用程序分为三个主要部分:模型(Model)、视图(View)和控制器(Controller)。在...
在ExtJS 4.1中,引入了强大的MVC(Model-View-Controller)模式,这是一种设计模式,有助于组织和分离应用程序的不同部分,使得代码更加模块化、可维护。本案例将深入探讨如何使用ExtJS 4.1实现MVC模式。 **一、...
MVC(Model-View-Controller)是一种设计模式,用于分离应用程序的数据模型、用户界面和控制逻辑,使得开发更易于维护和扩展。 在学习ExtJS4之前,首先需要获取ExtJS的开发资源。可以从官方站点...
EXTJS学习,webform+mvc routeing extjs布局 适合初学者
ExtJS是一款强大的JavaScript库,用于构建富客户端的Web应用程序,而MVC模式则是它组织代码和管理应用程序状态的核心设计模式。在这个官方实例中,我们可以深入理解如何在实际项目中有效地运用ExtJS的MVC模式。 MVC...
在本实例中,我们将深入探讨ExtJS 4.0中的MVC模式及其组成部分。 1. **Model(模型)**: - Model是数据存储的抽象,它封装了数据和与数据相关的操作。在ExtJS 4.0中,你可以定义模型类来描述数据结构,包括字段...
在本文中,我们将深入探讨ExtJS 4的MVC架构,这是一种强大的工具,用于构建复杂且易于维护的富客户端应用程序。MVC,即Model-View-Controller,是一种设计模式,它将应用程序的不同部分分离,以提高可读性、可扩展性...
**ExtJs+ASP.NET MVC 实例详解** 在现代Web应用开发中,前端界面的交互性和动态性变得越来越重要。`ExtJs`是一个强大的JavaScript框架,它提供了丰富的组件库和强大的数据管理功能,使得构建复杂的用户界面变得简单...
通过以上步骤,我们可以实现一个基于ExtJS的ASP.NET MVC4应用程序。这个Demo可能包含了简单的组件示例,如创建一个表格展示从后端获取的数据,或者一个表单用于用户输入,然后通过Ajax提交到服务器。深入学习和实践...
这个“Extjs4 MVC小实例”很可能是为了展示如何在实际项目中有效地运用MVC模式。 **模型(Model)** 在ExtJS 4的MVC中,模型负责管理应用程序的数据。模型类通常与后端服务器的数据接口进行交互,处理数据的加载、...
在这个示例中,我们将会深入探讨如何在ExtJS 4.0中运用MVC模式。 首先,MVC模式是软件设计的一个经典模式,它将应用程序分为三个主要部分:模型(Model)、视图(View)和控制器(Controller)。在ExtJS 4.0中,这...
ASP.NET MVC 是微软开发的一个开源Web框架,它结合了模型、视图和控制器的设计模式,为开发者提供了一种组织和构建动态网站的高效方式。C# 是ASP.NET MVC框架背后的编程语言,它是一种面向对象的、类型安全的、现代...
ExtJS 4 中的MVC应用架构是一种组织大型客户端应用程序的方式,旨在提高代码的可维护性和可扩展性。随着应用程序的复杂性和开发人员数量的增长,传统的编程方式可能会导致难以管理和控制的代码库。ExtJS 4 引入了...
用ExtJS4实现的treepanel与gridpanel的简单互动案例 包含mvc开发模式与普通开发模式两种 普通开发模式:需要在引入js文件夹中的main.js文件 mvc开发模式:需要引入app文件夹中的app.js文件 适合初学extjs4的朋友