投放本站广告请联系:
extjscn#126.com
Sencha Touch自动生成工具
在Sencha Touch中有一个鲜为人知的工具Sencha Command,位于sencha-touch-1.1.0/jsbuilder目录中,名为sencha.sh。相关资料表明该工具是用来自动化生成Sencha Touch项目目录结构,并包含一个代码生成器。使用了一下发现其明显处于试验阶段,因为代码中存在非常多的错误。通过sencha.sh生成的代码无法正常运行。不过不用担心,我们可以使用后面介绍的sencha-command来完成这些操作。下面简单的介绍sencha.sh的几个用法:
生成Sencha Touch项目
./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项目中生成三个文件并修改两个文件。但是很遗憾,目前版本不经过修改将无法正常执行。
├── app │ ├── models │ │ └── User.js - 新生成的User模型 ├── index.html - 引入app/models/User.js └── test ├── fixtures │ └── User.js - 新生成的User模型的fixture └── unit ├── index.html - 引入models/User.js └─── models └── User.js - 新生成的User模型的spec
./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项目中生成两个文件并修改两个文件。同样很遗憾,目前版本不经过修改将无法正常执行。
├── app │ ├── controllers │ │ └── users.js - 新生成的users控制器 ├── index.html - 引入app/controllers/users.js └── test └── unit ├── index.html - 引入controllers/users.js └── controllers └── controllers.js - 新生成的users控制器的spec
./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. 从github中签出sencha-command git clone https://github.com/towerhe/sencha-command.git # 2. 参照前面介绍的Sencha自带工具的用法生成项目、模型、控制器 # 3. 将项目部署到Web服务器 # 4. 浏览http://{your_server}:{port}/{any_prefix}/index.html来访问项目 # 5. 浏览http://{your_server}:{port}/{any_prefix}/test/unit/index.html来访问项目的单元测试
作者: Hetao
原文: http://hetao.im/2011/08/06/tdd-sencha-touc
- 关键字:
- 要发表评论,请先登录