地址:http://wenku.baidu.com/view/35f45e1610a6f524ccbf8529.html
Sencha-命令-CMD(与Touch的结合运用)(官网文档翻译30)
介绍
本指南介绍的过程中,使用Sencha Cmd的煎茶触摸应用程序启动的煎茶生成的应用程序
命令和结束正在运行的应用程序。
本指南适用于新的煎茶触摸的应用,以及升级现有的煎茶触摸应用程序。
对于一般的介绍,请参阅介绍煎茶Cmd的。
分享煎茶触摸应用程序之间或煎茶触摸和Ext JS的代码,请参阅煎茶Cmd的工作区中。
创建一个新的应用程序
下面的命令生成一个新的应用程序MyApp的
/路径/ / WWW / Myapp中的命名空间“:
# Make sure the current working directory is the Sencha Touch 2 SDK
cd /path/to/sencha-touch-2-sdk
sencha generate app MyApp/path/to/www/myapp
或者,您可以指定在命令行上的SDK的路径:
sencha -sdk /path/to/sencha-touch-2-sdk generate app MyApp/path/to/www/myapp
试试吧,简单地指向任何基于WebKit的浏览器http://localhost/myapp
。
恭喜你。你已经创建了一个完整的工作煎茶触摸应用程序在几秒钟内。
了解你的应用程序的结构
生成的应用程序应具有以下文件结构:
.sencha/# Sencha-specific files (e.g. configuration)
app/# Application-specific content
sencha.cfg # Configuration file for Sencha Cmd
plugin.xml # Plugin for Sencha Cmd
workspace/# Workspace-specific content (see below)
sencha.cfg # Configuration file for Sencha Cmd
plugin.xml # Plugin for Sencha Cmd
touch/# A copy of the Sencha Touch SDK
cmd/# Sencha Touch-specific content for Sencha Cmd
sencha.cfg # Configuration file for Sencha Cmd
plugin.xml # Plugin for Sencha Cmd
src/# The Sench Touch source
sencha-touch-*.js # Pre-compiled and bootstrap files...
app # Your application's source code in MVC structure
controller
model
profile
store
view
Main.js # The main view of the application
resources
css
app.css # The main stylesheet, compiled from app.scss
sass
app.scss # The SASS file which compiles to app.css above,# includes Sencha Touch 2 theme by default
icons # Application icons for all mobile devices# When replacing these default images with your own,# make sure the file name and the dimension stays exactly the same...
loading # Application start-up screens for iOS devices# Similarly to icons, make sure the file names and# dimension stays the same...
images # Put other images used by your application here
index.html
app.js # Contains application's initialization logics
app.json # Configuration for deployment
packager.json # Configuration for native packaging
“app.json”和“packager.json”为每个配置项的内联文档。只需打开文件并编辑它们,因为你需要。
开发应用程序
使用煎茶生成
命令的家人将帮助您快速生成常见的MVC组件。
重要。您的应用程序的根文件夹,请务必让你的当前目录。
例如:
cd /path/to/www/myapp
sencha generate model User--fields=id:int,name,email
此命令将生成一个新的Model类用户
与三个字段名为ID
,名称
, 电子邮件
“应用程序/模型/ user.js文件一样”和添加参考“app.js”文件。
升级您的应用程序
生成的应用程序总是有自己的副本,他们最初生成的SDK。您的应用程序升级到一个新版本的SDK意味着你必须替换旧的版本,新的。执行此命令煎茶应用程序的升级
。
重要。您的应用程序的根文件夹,请务必让你的当前目录。
这里有一个更完整的例子:
cd /path/to/www/myapp
sencha app upgrade /path/to/new_version_of_sdk
部署应用程序
开发你的应用程序仅仅意味着编辑源代码,并刷新浏览器。所有的源文件是动态加载的需求。有没有涉及的建设过程中。当谈到煎茶Cmd的部署,提供以下四种构建环境选项:
用于QA
测试
-在生产前。所有的JavaScript和CSS源文件捆绑在一起,但不精缩,这使得它更容易调试。包
-创建一个自包含的,可再发行组件生产版本的Web服务器,从本地文件系统没有正常运行的。生产
-创建一个生产版本,通常在Web服务器上托管,并提供多个客户端(设备)。构建是能够使用HTML 5应用程序缓存,并能够执行空中更新。本地
-第一生成包
,然后将其打包为本地应用程序,准备将其部署到本地平台。
作为一个例子,下面的命令生成一个测试
您的应用程序建立的。
重要。您的应用程序的根文件夹,请务必让你的当前目录。
cd /path/to/www/myapp
sencha app build testing
同样,当您准备好进行生产部署:
cd /path/to/www/myapp
sencha app build production
默认的部署路径的从的buildPaths
项目里面app.json
。对于可选参数的详细信息,请运行以下命令:
cd /path/to/www/myapp
sencha help app build
煎茶Cmd的自动优化您的应用程序,包括以下内容:
- 解决应用程序所需的依赖关系,不仅包括到底有什么用最佳的文件大小/性能。
- 通过自动生成的的“cache.manifest”和资源校验启用HTML 5应用程序缓存。
- 涅槃所有JavaScript和CSS资产的。
- 在第一次加载本地存储和修补他们通过增量更新版本之间的内部存储所有JavaScript和CSS资产的。
因此,您的生产版本可以加载立即在飞行中以最小的网络传输在随后的访问和更新。
重要。的文件自动产生cache.manifest的
你。请确保您的Web服务器提供正确的Content-Type
头的文本/高速缓存清单
。要了解更多关于HTML 5应用程序缓存,看到HTML5岩石,教程 初学者的指南使用应用程序缓存。
将应用程序打包应用程序商店分布
packager.json
包含所有可配置的值将应用程序打包。
如果您使用的是OS X和Xcode的安装,下面的命令封装您的应用程序并运行它的iPhone模拟器上:
sencha app build native
更多上与packager.json的
详细信息,请参阅 本地软件包指南
故障排除
使用Sencha Cmd的常见问题,请参阅“故障排除”一节 介绍煎茶Cmd的。
错误,在解决依赖关系 - 第2部分
新的煎茶Cmd的编译器所使用的默认情况下,确定依赖。与以前的版本不同的是,编译器决定处理的源代码(应用程序和框架)的依赖关系。在某些情况下,这可能会导致缺少的依赖关系,也就是说,在以前的版本中,但没有检测到由编译器自动检测到的依赖关系。
在这种情况下,理想的解决方案是添加缺少的要求
报表来解决问题。这可能包括覆盖切换到新的,指定的形式,如:
Ext.define('MyApp.patches.foo.Bar',{override:'Ext.foo.Bar',...});
这使得替代他们的名字,因此需要编译器来处理它们以正确的顺序。
如果这一努力需要被推迟,你可以使V2兼容模式的基础上,启动应用程序通过文件系统协议内的一具无头的WebView中提取的依赖。要做到这一点,使用这个命令代替煎茶应用程序的构建
:
sencha config -prop v2deps=truethen app build
另外,你也可以添加下面一行到你的“.sencha / APP / sencha.cfg的”文件和运行煎茶应用程序建立
和以前一样:
v2deps = TRUE
在这种传统模式下,如果你的应用程序依赖于任何动态服务 器端脚本(例如,从一个PHP脚本加载类的配置),你必须设置URL
项内app.json
的绝对URL可以从您的应用程序装上的Web浏览器。例如:
// app.json{"url":"http://localhost/myapp/",// ...}