热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

ExtJSMVC系列一:环境搭建与框架概览

本文主要介绍了如何在项目中使用ExtJS4作为前端框架,并详细讲解了ExtJS4的MVC开发模式。文章将从项目目录结构、相关CSS和JS文件的引用以及MVC框架的整体认识三个方面进行总结。

近期项目需要使用Ext JS 4作为前端框架,因此本文将详细介绍Ext JS 4的MVC开发模式。该系列文章旨在帮助读者全面了解Ext JS 4的MVC框架。本文将从以下几个方面进行总结:

1. 项目目录结构
2. 相关CSS文件和JS文件的引用
3. MVC框架的整体认识

项目目录结构

Ext JS 4采用了统一的目录结构,类似于ASP.NET MVC。在MVC模式中,所有类都放置在app目录下,该目录包含四个子目录(每个子目录代表一个命名空间),分别是controller、model、view和store。项目目录结构图如下所示:

ext01

相关CSS文件和JS文件的引用

为了使Ext JS 4正常工作,我们需要在首页的head标签中引用ext-all.css、bootstrap.js和项目的入口文件app.js。具体引用方式如下图所示:

ext02

MVC框架的整体认识

为了更好地理解Ext JS 4的MVC开发模式,我们先来看一张图,然后进行具体说明。

ext03

1. 每个应用都有一个Application对象,应用采用单一入口结构,通过快捷函数Ext.application({config})创建并运行Application对象实例。Application在创建时会加载Controller类,加载完成后正式启动。
2. Application启动时会创建一个Viewport实例,Viewport充当界面的骨架,用于拼装各种View,如布局形式和窗体控件。一个页面只能有一个Viewport实例。
3. View是一个界面组件或窗体控件的集合(例如表单、网格和窗口)。通过Store加载数据并展示到界面上,界面控件的响应逻辑写在Controller中,View对Controller的存在无感知,没有代码上的依赖。
4. Controller扮演粘合剂的角色,加载时会帮助加载相关的Model、Store和View类。其主要作用是通过一系列事件处理函数(如点击保存按钮)定义每个View上界面组件对用户交互行为的响应方法。Controller通过control成员函数进行事件绑定,使用ComponentQuery组件以类似CSS选择器的语法定位界面上的组件,并为其绑定事件处理器。
5. Model是对抽象数据的具体化,可以理解为数据库中的一行记录。
6. Store是对通过网络加载数据过程的抽象,通过data发送请求(通常为AJAX请求)到后台获取数据(通常返回JSON格式)。Store依赖于Model,通过关联的Model对象知道如何将取回的数据对象化。

总结一下,MVC架构的好处在于将View和Model抽象出来,使其能够更好地复用。一个面板做好后可以在多个地方调用,业务逻辑则被封装在Controller中,便于模块化开发系统。

下一篇将介绍如何利用Application、Viewport和View进行应用程序的初始化和页面布局。


推荐阅读
  • Web开发框架概览:Java与JavaScript技术及框架综述
    Web开发涉及服务器端和客户端的协同工作。在服务器端,Java是一种优秀的编程语言,适用于构建各种功能模块,如通过Servlet实现特定服务。客户端则主要依赖HTML进行内容展示,同时借助JavaScript增强交互性和动态效果。此外,现代Web开发还广泛使用各种框架和库,如Spring Boot、React和Vue.js,以提高开发效率和应用性能。 ... [详细]
  • Framework7:构建跨平台移动应用的高效框架
    Framework7 是一个开源免费的框架,适用于开发混合移动应用(原生与HTML混合)或iOS&Android风格的Web应用。此外,它还可以作为原型开发工具,帮助开发者快速创建应用原型。 ... [详细]
  • 在JavaWeb开发中,文件上传是一个常见的需求。无论是通过表单还是其他方式上传文件,都必须使用POST请求。前端部分通常采用HTML表单来实现文件选择和提交功能。后端则利用Apache Commons FileUpload库来处理上传的文件,该库提供了强大的文件解析和存储能力,能够高效地处理各种文件类型。此外,为了提高系统的安全性和稳定性,还需要对上传文件的大小、格式等进行严格的校验和限制。 ... [详细]
  • 技术分享:使用 Flask、AngularJS 和 Jinja2 构建高效前后端交互系统
    技术分享:使用 Flask、AngularJS 和 Jinja2 构建高效前后端交互系统 ... [详细]
  • 本文详细解析了 Yii2 框架中视图和布局的各种函数,并综述了它们在实际开发中的应用场景。通过深入探讨每个函数的功能和用法,为开发者提供了全面的参考,帮助他们在项目中更高效地利用这些工具。 ... [详细]
  • 在探讨Hibernate框架的高级特性时,缓存机制和懒加载策略是提升数据操作效率的关键要素。缓存策略能够显著减少数据库访问次数,从而提高应用性能,特别是在处理频繁访问的数据时。Hibernate提供了多层次的缓存支持,包括一级缓存和二级缓存,以满足不同场景下的需求。懒加载策略则通过按需加载关联对象,进一步优化了资源利用和响应时间。本文将深入分析这些机制的实现原理及其最佳实践。 ... [详细]
  • 本文详细介绍了 HTML 中 a 标签的 href 属性的多种用法,包括实现超链接、锚点以及调用 JavaScript 方法。通过具体的示例和解释,帮助开发者更好地理解和应用这些技术。 ... [详细]
  • 本文介绍了如何使用 Node.js 和 Express(4.x 及以上版本)构建高效的文件上传功能。通过引入 `multer` 中间件,可以轻松实现文件上传。首先,需要通过 `npm install multer` 安装该中间件。接着,在 Express 应用中配置 `multer`,以处理多部分表单数据。本文详细讲解了 `multer` 的基本用法和高级配置,帮助开发者快速搭建稳定可靠的文件上传服务。 ... [详细]
  • 在PHP中如何正确调用JavaScript变量及定义PHP变量的方法详解 ... [详细]
  • 您的数据库配置是否安全?DBSAT工具助您一臂之力!
    本文探讨了Oracle提供的免费工具DBSAT,该工具能够有效协助用户检测和优化数据库配置的安全性。通过全面的分析和报告,DBSAT帮助用户识别潜在的安全漏洞,并提供针对性的改进建议,确保数据库系统的稳定性和安全性。 ... [详细]
  • 深入解析Struts、Spring与Hibernate三大框架的面试要点与技巧 ... [详细]
  • Python 数据可视化实战指南
    本文详细介绍如何使用 Python 进行数据可视化,涵盖从环境搭建到具体实例的全过程。 ... [详细]
  • C++ 异步编程中获取线程执行结果的方法与技巧及其在前端开发中的应用探讨
    本文探讨了C++异步编程中获取线程执行结果的方法与技巧,并深入分析了这些技术在前端开发中的应用。通过对比不同的异步编程模型,本文详细介绍了如何高效地处理多线程任务,确保程序的稳定性和性能。同时,文章还结合实际案例,展示了这些方法在前端异步编程中的具体实现和优化策略。 ... [详细]
  • 为开发者提供了一系列实用的参考网站和资源链接,包括HTML速查手册( 和 ),帮助开发者快速查找和学习相关技术知识。此外,还涵盖了其他重要的开发工具和文档,为编程工作提供全面支持。 ... [详细]
  • 本文详细探讨了 jQuery 中 `ajaxSubmit` 方法的使用技巧及其应用场景。首先,介绍了如何正确引入必要的脚本文件,如 `jquery.form.js` 和 `jquery-1.8.0.min.js`。接着,通过具体示例展示了如何利用 `ajaxSubmit` 方法实现表单的异步提交,包括数据的发送、接收和处理。此外,还讨论了该方法在不同场景下的应用,如文件上传、表单验证和动态更新页面内容等,提供了丰富的代码示例和最佳实践建议。 ... [详细]
author-avatar
萧勇志762852
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有