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

SenchaTouch学习使用心得Unit1搭架构

本文介绍了SenchaTouch的学习使用心得,主要包括搭建项目框架的过程。作者强调了使用MVC模式的重要性,并提供了一个干净的引用示例。文章还介绍了Index.html页面的作用,以及如何通过链接样式表来改变全局风格。

本文献给那些看不懂官方API,接着又被网上被转载N遍的论文折磨N遍的苦逼的程序猿们。

事先声明:由于本人做线上webapp,所以本文不包括打包操作。如phonegap等JAVA操作.

由于Sencha Touch主要使用的是MVC模式,所以本文直接以MVC模式开始我们的路程。个人认为不应用MVC模式的Sencha Touch是没有意义的,况且从MVC学习ST的话更为系统化。简单,易懂,高端,大气,上档次!前提你要知道MVC模式.

Chapter 1:搭架构

   创建Web工程,添加SenchaTouch类库,不用非要按部就班的CMD创建工程,因为就算创建出来了对于初学者来说也不明白,所以对于初学者来说一步一步搭建SenchaTouch项目的框架是比较有好处的。下图是对SenchaTouch一个比较干净的引用。作者只用到了官方提供的CSS样式如官方样式表、苹果样式表、安卓样式表、黑莓样式表(日后应该会有WP7)很强大,直接link,就可改变全局风格。注意到了么,工程中有一个Index.html,我们要拿这一个页面实现所有项目内页面的实现,可能现在有些蒙,但看完下文你就会明白,这就是SenchaTouch的强大之处(Extjs也可以吧)。(额外提一点:不管是学习新东西还是遇到阻碍,切记要坚持,可谓锲而不舍,金石可漏。说不定你就突然开窍了)

    Index.html里只引用三个文件.app/app.js文件下面讲解

    HTML的声明要写成DOCTYPE HTML>,这才是HTML5的声明.(不知道SenchaTouch是基于HTML5的就悲剧了)


Chapter 2:了解MVC(核心)

    此MVC是由JS编写的纯JS MVC。之前有人问过我,居然不知道,惭愧之极。JS MVC编写比较困难的地方就是全部文件都需要自己编写(类似MVC引擎吧HTTP机制),不过看清之后还是比较简单的,毕竟和ASP.NET MVC架构还是差的比较多的.坑爹Framwork老更新,无奈上了不归路,学无止境啊.

    说了是MVC嘛,要有一个入口文件(route),开始编写app/app.js文件.脑子里想着OPP就好了.加载视图,控制器(全部),实体(全部),数据源(全部)。视图可以只预加载应用程序启动时的特定页面,其他页面可以在控制器里按需创建加载。其他必须全部预加载。如引用的是Sench-touch-all.js,View中可以不用预加载页面组件如文本框等。

如引用的是Sench-touch.js,View中组件需事先加载.例:requires ['Ext.MessageBox'],

目前先用不到Model和Store,先注释枪毙,其他应该能看明白.

做的例子是查询显示功能。两个页面,两个控制器。由于是学习阶段,所以我们用一对一关系,一个控制器对一个视图操作,思路清理后可以正常一对多关系解决。

//启用自动加载
Ext.Loader.setConfig({
    enabled: true
});
//应用程序入口
Ext.application({
    //应用程序名(命名空间)
    name: 'ST',
    //requires ['Ext.MessageBox'],  //预加载(如采用sencha-toucha.js需要预加载)
    //需要加载的View
    views: ['query'],
    //数据模型
    //models: ['ST.model.Unit'],
    //数据存储
    //stores: [ 'ST.store.Units'],
    //需要加载的控制器
    controllers: ['query', 'QueryList'],
    //应用程序启动
    launch: function() {
        Ext.create("ST.view.query", {
            fullscreen: true
        })
    }
});

多多指教......

期待下文......


推荐阅读
  • ASP.NET MVC 小牛之旅3:Routing——网址路由
    网址路由(Routing)在ASP.NETMVC中有两个主要用途,一个用途是匹配通过浏览器传来的HTTP请求,另一个用途则是响应适当的网址给浏览器。3.1匹配通过浏览器传来的HTT ... [详细]
  • HDU 2372 El Dorado(DP)的最长上升子序列长度求解方法
    本文介绍了解决HDU 2372 El Dorado问题的一种动态规划方法,通过循环k的方式求解最长上升子序列的长度。具体实现过程包括初始化dp数组、读取数列、计算最长上升子序列长度等步骤。 ... [详细]
  • 本文介绍了C#中数据集DataSet对象的使用及相关方法详解,包括DataSet对象的概述、与数据关系对象的互联、Rows集合和Columns集合的组成,以及DataSet对象常用的方法之一——Merge方法的使用。通过本文的阅读,读者可以了解到DataSet对象在C#中的重要性和使用方法。 ... [详细]
  • 本文介绍了OC学习笔记中的@property和@synthesize,包括属性的定义和合成的使用方法。通过示例代码详细讲解了@property和@synthesize的作用和用法。 ... [详细]
  • 本文介绍了在Linux下安装Perl的步骤,并提供了一个简单的Perl程序示例。同时,还展示了运行该程序的结果。 ... [详细]
  • 后台获取视图对应的字符串
    1.帮助类后台获取视图对应的字符串publicclassViewHelper{将View输出为字符串(注:不会执行对应的ac ... [详细]
  • 解决VS写C#项目导入MySQL数据源报错“You have a usable connection already”问题的正确方法
    本文介绍了在VS写C#项目导入MySQL数据源时出现报错“You have a usable connection already”的问题,并给出了正确的解决方法。详细描述了问题的出现情况和报错信息,并提供了解决该问题的步骤和注意事项。 ... [详细]
  • CentOS 7部署KVM虚拟化环境之一架构介绍
    本文介绍了CentOS 7部署KVM虚拟化环境的架构,详细解释了虚拟化技术的概念和原理,包括全虚拟化和半虚拟化。同时介绍了虚拟机的概念和虚拟化软件的作用。 ... [详细]
  • Asp.net Mvc Framework 七 (Filter及其执行顺序) 的应用示例
    本文介绍了在Asp.net Mvc中应用Filter功能进行登录判断、用户权限控制、输出缓存、防盗链、防蜘蛛、本地化设置等操作的示例,并解释了Filter的执行顺序。通过示例代码,详细说明了如何使用Filter来实现这些功能。 ... [详细]
  • 一、Struts2是一个基于MVC设计模式的Web应用框架在MVC设计模式中,Struts2作为控制器(Controller)来建立模型与视图的数据交互。Struts2优点1、实现 ... [详细]
  • MVC中的自定义控件
    怎么样创建自定义控 ... [详细]
  • MVC就是model模型control控制view视图把web开发的分工明确各施其职,互不干涉在MVC模式中,三个层各施其职,所以如果一旦哪一层的需求发生了变化,就只需要更改相 ... [详细]
  • DH-UAP是西安大华时代网络科技有限公司开发的新一代应用开发、运行、维护平台。该平台提供了技术统一、架构合理、性能高效、安全可靠的企业级信息系统基础框架和组件库,支 ... [详细]
  • 高质量SQL书写的30条建议
    本文提供了30条关于优化SQL的建议,包括避免使用select *,使用具体字段,以及使用limit 1等。这些建议是基于实际开发经验总结出来的,旨在帮助读者优化SQL查询。 ... [详细]
  • MVC下Log4Net的配置和使用
    MVC下Log4Net的配置和使用对于网站来讲,我们不能将异常信息显示给用户,Log4Net用来记录日志,可以将程序运行过程中的信息输出到文件,数据库中等地方,可以通过日志查看系统的运行过程,发现系 ... [详细]
author-avatar
林姗飘零1999
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有