本指南介绍了如何使用新的煎茶Cmd的工作区功能建设的大型应用程序使用多个页面。此功能可让,煎茶Cmd的理解和使用您的应用程序的各个页面的共享代码的网页,框架,。这使得煎茶cmd来自动执行许多常见任务。
建立一个大型的应用程序的过程开始建立一个单页的应用程序的过程一样。学习功能的大型应用程序的工作区之前,一定要了解煎茶Cmd的基础知识,通过阅读 。
关于术语的说明。煎茶框架为基础的应用程序,它采用MVC架构,请致电的代码树的顶部。这可能会造成混淆,因为框架使用的术语“应用程序”来形容的每一页。在单页面的应用程序,这些条款是可以互换的。当你的应用涉及多个页面,但是,这是没有的情况下。本指南使用“页面”在大多数情况下,因为在这种情况下,更加贴合。
什么是工作区?
煎茶Cmd的V3是新的“工作区”的概念。工作区是一个简单的文件夹,其中包含一个或多个页面,框架和其他共享代码或文件。应选择工作区根目录文件夹的位置,以方便应用程序的页面,共享代码和框架位置的需求。所有生成的页面应该驻留在工作区文件夹的子文件夹中。虽然不是必需的,这是通常的情况下,工作区文件夹的根文件夹中的源代码管理系统信息库中。
您的网页在一个工作区中的确切组织并不重要,煎茶Cmd的。然而,为了简单起见,例子在本指南中创建的所有页面的直接子文件夹的工作区。
生成工作区
要生成一个工作区,使用这个命令:
sencha generate workspace /path/to/workspace
这将创建在指定的文件夹下面的结构。
sencha/# Sencha-specific files (e.g. configuration) workspace/# Workspace-specific content (see below) sencha.cfg # Configuration file for Sencha Cmd plugin.xml # Plugin for Sencha Cmd
煎茶/ #的煎茶特定文件(如配置) 工作区/ #工作区的具体内容(见下文) 煎茶。CFG #配置文件煎茶Cmd的 插件。XML #插件
上面的目录结构应该是熟悉的,因为它是在结构的一部分 。然而,在这种情况下,只有“.sencha /工作区”的文件夹被创建。
生成页面
一旦你有一个工作区,生成页面(“应用程序”)和以前一样:
sencha -sdk /path/to/ext generate app ExtApp/path/to/workspace/extApp
您还可以生成煎茶触摸应用程序在相同的工作区:
sencha -sdk /path/to/touch generate app TouchApp/path/to/workspace/touchApp
这些生成的页面,因为目标是在工作区中,下面的结构将被创建(这是一个单页的应用程序相比略有不同):
.sencha/# Sencha-specific files (e.g. configuration) workspace/# Workspace-specific content (see below) sencha.cfg # Configuration file for Sencha Cmd plugin.xml # Plugin for Sencha Cmdext/# A copy of the Ext JS SDK...touch/# A copy of the Sencha Touch SDK...extApp/.sencha/# Sencha-specific files (e.g. configuration) app/# Application-specific content sencha.cfg # Configuration file for Sencha CmdtouchApp/.sencha/# Sencha-specific files (e.g. configuration) app/# Application-specific content sencha.cfg # Configuration file for Sencha Cmdbuild/# The folder where build output is placed. extApp/# Build output for ExtApp... touchApp/# Build output for TouchApp (by environment)native/package/ production/ testing/
煎茶/ #的煎茶特定文件(如配置) 工作区/ #工作区的具体内容(见下文) 煎茶。CFG #配置文件煎茶Cmd的 插件。XML #... 触摸/ #煎茶触摸SDK的副本... extApp / 。的煎茶特定文件(如配置) 的应用程序/ 应用的具体内容 煎茶。CFG 配置文件,煎茶Cmd的touchApp / 。煎茶/ #煎茶特定的文件(如配置) 的应用程序/ 应用的具体内容 煎茶。CFG 配置文件的煎茶Cmd的构建/ #文件夹中建立输出放置。 extApp / #构建输出为ExtApp ... touchApp / #生成输出为TouchApp(环境)的本地/ 包/ 生产/ 测试/
为了产生更多的页面,重复上面的命令。请参阅相应的框架的 指南的详细信息。
建立网页
建立一个多应用程序的每个页面的过程是从相应的文件夹中运行此命令:
sencha app build
为了提高效率,你可以创建一个脚本,这个过程,也许使用煎茶CMD的 。
组态
配置中的描述是类似的。“.sencha /应用程序/ sencha.cfg的”
保存配置的一个页面(“APP”)。最重要的的属性发现也许有app.classpath的
。
单页面应用程序不同的是,“.sencha /工作区/ sencha.cfg的”
文件是在工作区中的所有页面设置配置属性非常有用。这些属性中最重要的是可能workspace.classpath的
。
被替换多个文件中的设置在每个文件中加载的属性按以下顺序:
-
/some/system/path/Sencha/Cmd/<version>/sencha.cfg
${workspace.dir}/${app.framework}/cmd/sencha.cfg
${workspace.dir}/.sencha/workspace/sencha.cfg
${app.dir}/.sencha/app/sencha.cfg
煎茶Cmd的配置属性设置可以覆盖的框架,可以在工作区覆盖,最后在应用程序本身的配置。这意味着最终结果总是可以被控制的一个页面的“sencha.cfg”
文件的一个属性 。
配置属性的详细信息,可以通过阅读这些文件中的注释。
之间共享代码页
多页应用程序通常在页面之间共享代码。使用工作区,您可以使用Cmd的煎茶,以自动扫描共享代码的的煎茶应用程序的编译
命令。这里是如何做到这一点。
让一个普通的
文件夹添加到工作区,像这样:
.sencha/ workspace/...common/# Folder for common things between pages. src/# Folder for common JavaScript code for all pages.
#页面之间的共同的东西。文件夹/ 文件夹的所有网页常见的JavaScript代码。
在构建应用程序中的所有页面,包括普通/ src目录
,添加 “.sencha /区/ sencha.cfg的”
:
workspace.classpath=${ workspace.dir}/common/src
默认的classpath中添加以下组件:
${ framework.classpath},${ workspace.classpath},${ app.classpath}
混合应用
除了在多个外部的JS网页,或多个煎茶触摸应用程序之间共享代码,通常是需要共享的代码在这两个煎茶框架。虽然框架有很多共同点,他们在许多重要的方面有所不同,尤其是在UI组件和布局,人们所期望的,因为他们的目标等不同的设备环境。即使有这些差异,这是可能的,这两个框架之间共享代码,例如,两个模型类的定义之间共享代码。的Ext JS和煎茶触摸之间共享代码的细节两个框架之间的不同,所以每个使用Sencha Cmd的,请务必阅读本指南。