SENCHA TOUCH 自动生成工具

http://www.qast.com/sencha/book4.htm

在Sencha Touch中有一个鲜为人知的工具Sencha Command,位于sencha-touch-1.1.0/jsbuilder目录中,名为sencha.sh。相关资料表明该工具是用来自动化生成Sencha Touch项目目录结构,并包含一个代码生成器。使用了一下发现其明显处于试验阶段,因为代码中存在非常多的错误。通过sencha.sh生成的代码无法正常运行。不过不用担心,我们可以使用后面介绍的sencha-command来完成这些操作。下面简单的介绍sencha.sh的几个用法:

生成Sencha Touch项目

1../sencha.sh generate app YourSenchaTouchApp /path/to/save/YourSenchaTouchApp

参数解释:
generate – 指定使用generator模块,该模块负责代码的自动生成;
app – 指定将要生成的是Sencha Touch项目;
YourSenchaTouchApp – 指定待生成的Sencha Touch项目名称,该名称将作为Ext.Application的名称,因此命名必须是一个合法的javascript的一个合法标识符;
/path/to/save/YourSenchaTouchApp – 指定待生成的项目将被保存在何处。

生成Sencha Touch Model
本命令需要在生成的Sencha Touch目录中执行,该命令会在Sencha Touch项目中生成三个文件并修改两个文件。但是很遗憾,目前版本不经过修改将无法正常执行。

01.├── app
02.│   ├── models
03.│   │   └── User.js      - 新生成的User模型
04.├── index.html           - 引入app/models/User.js
05.└── test
06.├── fixtures
07.│   └── User.js      - 新生成的User模型的fixture
08.└── unit
09.├── index.html   - 引入models/User.js
10.└─── models
11.└── User.js - 新生成的User模型的spec
1../sencha.sh generate model User name:string password:string age:int

参数解释:
generate – 指定使用generator模块,该模块负责代码的自动生成;
model – 指定将要生成的是Sencha Touch模型
User – 指定待生成的模型的名称
name:string password:string age:int – 指定待生成的属性定义,属性定义由两部分组成,<属性名>:<类型>。

生成Sencha Touch Controller
本命令需要在生成的Sencha Touch目录中执行,该命令会在Sencha Touch项目中生成两个文件并修改两个文件。同样很遗憾,目前版本不经过修改将无法正常执行。

01.├── app
02.│   ├── controllers
03.│   │   └── users.js            - 新生成的users控制器
04.├── index.html                  - 引入app/controllers/users.js
05.└── test
06.└── unit
07.├── index.html          - 引入controllers/users.js
08.└── controllers
09.└── controllers.js - 新生成的users控制器的spec
1../sencha.sh generate controller users index new create show update destroy

参数解释:
generate – 指定使用generator模块,该模块负责代码的自动生成;
controller – 指定将要生成的是Sencha Touch控制器
users – 指定待生成的控制器的名称
index new create show update destroy – 指定待生成的控制器方法。

Sencha Command
Sencha Command – 是muc修正后发布的工具,该工具修正了Sencha Touch自带的工具存在的大部分问题。但是单元测试,以及提示信息依然存在一些小的问题。我在github上fork了这个项目https://github.com/towerhe/sencha-command,并修正了一些目前发现的问题:

  • test/unit/index.html中引入的sencha-touch-debug.js目录不正确
  • test/unit/index.html中默认不引入app.js
  • 调用generator时提示信息错误

Sencha Command与Sencha Touch自带的工具完成相同的工作,但有一些细小的改动:

  • 目录结构不同
  • 原脚本sencha.sh改名为sencha
  • 生成的项目中包含了Sencha Touch的资源文件
  • 修复了sencha touch资源引用的错误
  • 修复了无法使用模型和控制器生成器的错误

如何使用Sencha Command

1.# 1. 从github中签出sencha-command
3.# 2. 参照前面介绍的Sencha自带工具的用法生成项目、模型、控制器
4.# 3. 将项目部署到Web服务器
5.# 4. 浏览 http://{your_server}:{port}/{any_prefix}/index.html来访问项目
6.# 5. 浏览 http://{your_server}:{port}/{any_prefix}/test/unit/index.html来访问项目的单元测试


Sencha Touch 是第一个专门设计为移动设备开发 web 应用的 JavaScript 框架,它基于 HTML5 和 CSS3 的 web 标准,全面兼容 Android 和 Apple iOS,通过 Sencha Touch 框架用户可以创建非常像移动设备本地应用的 web 应用,它提供了丰富的华丽的控件和强大的功能,包括对触控事件的增强,数据整合等。本文通过对 Sencha Touch 框架的介绍,使者对该框架有一定的了解,并通过一些代码示例给用户更详细直观的对 Sencha Touch 框架功能的了解。 ExtJS ExtJS 是为 web 开发人员提供的基于 JavaScript 和 web 标准快速构建可以跨浏览器平台运行的强大的 web 应用程序开发框架。它提供了丰富的用户界面组件和完善的文档资源,并且还有一个最重要的优势就是组件的设计简洁而容易扩展。 Ext GWT Ext GWT 是使用 Java 构建富 web 应用的最快,最有效的框架。它提供了运行性能良好的用户界面控件,并且在界面布局管理和全键盘支持方面有更突出的优势。 等等 Ext Core Ext Core 是一个构建跨浏览器运行的动态 web 应用的 JavaScript 库,它提供了 DOM 查询和元素选择的跨浏览器访问 API,它是一个轻量级的,运行性能良好并且很容易使用的 JavaScript 库。 Ext Designer Ext Designer 是一个帮助用户更快的创建桌面应用程序的可视化的界面图形化工具Sencha Touch Sencha Touch 是第一个基于 HTML5 的 Mobile web 应用开发框架。 Sencha Animator Sencha Animator 是一个创建基于 WebKit 浏览器和触屏移动设备运行的 CSS3 动画的工具,用户可以通过它创建出令人惊叹的动画,效果一点也不逊色于 Adobe 的动画工具
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值