许多类在使用配置对象创建(实例化)类时都有快捷名称。快捷名称被称为 alias
(如果类扩展了 Ext.Component,则为 xtype
)。别名/xtype 列在适用类的类名旁边,以供快速参考。
框架类或其成员可以指定为 private
或 protected
。否则,类/成员为 public
。Public
、protected
和 private
是访问描述符,用于传达类或类成员应如何以及何时使用。
公共 (Public) 类和类成员可供任何其他类或应用程序代码使用,并且在主要产品版本中可以作为稳定和持久的内容依赖。公共类和成员可以通过子类安全地扩展。
受保护 (Protected) 的类成员是稳定的 public
成员,旨在由拥有类或其子类使用。受保护的成员可以通过子类安全地扩展。
私有 (Private) 类和类成员在框架内部使用,不供应用程序开发人员使用。私有类和成员可能会在任何时候更改或从框架中省略,恕不另行通知,并且不应在应用程序逻辑中依赖。
static
标签。*请参阅下面的静态。下面是一个示例类成员,我们可以对其进行剖析,以展示类成员的语法(在这种情况下,从 Ext.button.Button 类查看的 lookupComponent 方法)。
让我们看一下成员行的每个部分
lookupComponent
)( item )
)Ext.Component
)。对于除了 undefined
之外不返回任何内容的方法,或者可能显示为用斜杠 /
分隔的多个可能值,则可以省略此项,这表示返回的内容可能取决于方法调用的结果(即,如果 get 方法调用成功,则方法可能返回 Component,如果失败,则返回 false
,这将显示为 Ext.Component/Boolean
)。PROTECTED
- 请参阅下面的标志部分)Ext.container.Container
)。如果成员源自当前类,则源类将显示为蓝色链接;如果它从祖先类或混合类继承,则显示为灰色链接。view source
)item : Object
)。undefined
以外的值,则“返回值”部分将注释返回的类或对象类型以及描述(示例中的 Ext.Component
)Available since 3.4.0
- 示例中未显示),就在成员描述之后Defaults to: false
)API 文档使用许多标志来进一步沟通类成员的功能和意图。标签可以用文本标签、缩写或图标表示。
classInstance.method1().method2().etc();
false
,则标记为可阻止的事件将不会触发- 表示框架类
- 单例框架类。*有关更多信息,请参阅单例标志
- 组件类型框架类(Ext JS 框架中扩展 Ext.Component 的任何类)
- 表示类、成员或指南在当前查看的版本中是新的
- 表示 config
类型的类成员
- 表示 property
类型的类成员
- 表示 method
类型的类成员
- 表示 event
类型的类成员
- 表示 theme variable
类型的类成员
- 表示 theme mixin
类型的类成员
- 表示类、成员或指南在当前查看的版本中是新的
在 API 文档页面上的类名下方,是一行按钮,对应于当前类拥有的成员类型。每个按钮显示按类型划分的成员计数(此计数会随着应用过滤器而更新)。单击按钮将导航到该成员部分。将鼠标悬停在成员类型按钮上将显示该类型的所有成员的弹出菜单,以便快速导航。
与类配置选项相关的 Getter 和 Setter 方法将显示在方法部分以及 API 文档和成员类型菜单的配置部分中,就在它们所作用的配置下方。Getter 和 Setter 方法文档将在配置行中找到,以便于参考。
您的页面历史记录保存在本地存储中,并显示在顶部标题栏下方(使用可用的实际空间)。默认情况下,显示的唯一搜索结果是与您当前查看的产品/版本匹配的页面。您可以通过单击历史记录栏右侧的 按钮并选择“全部 (All)”单选选项来展开显示的内容。这将显示所有产品/版本的所有最近页面历史记录栏。
在历史记录配置菜单中,您还将看到最近页面访问的列表。结果按“当前产品/版本 (Current Product / Version)”和“全部 (All)”单选选项进行过滤。单击 按钮将清除历史记录栏以及本地存储中保存的历史记录。
如果在历史记录配置菜单中选择“全部 (All)”,则将启用“在历史记录栏中显示产品详细信息 (Show product details in the history bar)”复选框选项。选中后,每个历史页面的产品/版本将与历史记录栏中的页面名称一起显示。将光标悬停在历史记录栏中的页面名称上也会将产品/版本显示为工具提示。
可以使用页面顶部的搜索字段搜索 API 文档和指南。
在 API 文档页面上,还有一个过滤器输入字段,该字段使用过滤器字符串过滤成员行。除了按字符串过滤外,您还可以按访问级别、继承和只读来过滤类成员。这可以使用页面顶部的复选框来完成。
API 类导航树底部的复选框过滤类列表,以包含或排除私有类。
单击空的搜索字段将显示您最近 10 次搜索,以便快速导航。
每个 API 文档页面(JavaScript 原始类型页面除外)都有一个与该类相关的元数据菜单视图。此元数据视图将具有以下一项或多项
Ext.button.Button
类具有 Ext.Button
的别名)。别名通常是为了向后兼容性而维护的。可运行的示例 (Fiddles) 默认在页面上展开。您可以使用代码块左上角的箭头单独折叠和展开示例代码块。您还可以使用页面右上角的切换按钮切换所有示例的折叠状态。切换所有状态将在页面加载之间记住。
类成员默认在页面上折叠。您可以使用成员行左侧的箭头图标或全局使用右上角的展开/折叠全部切换按钮来展开和折叠成员。
在较窄的屏幕或浏览器上查看文档将导致针对较小外形尺寸优化的视图。桌面和“移动”视图之间的主要区别是
可以通过单击 API 文档页面顶部的类名来查看类源代码。可以通过单击成员行右侧的“查看源代码 (view source)”链接来查看类成员的源代码。
调用 Apache Ant 的嵌入版本,提供 cmd.dir
属性以使用以下 taskdef
访问 Sencha Cmd
<taskdef resource="com/sencha/ant/antlib.xml"
classpath="${cmd.dir}/sencha.jar"
loaderref="senchaloader"/>
即使此命令不符合正常的 Sencha Cmd 参数语法,它也能识别 Ant 使用的 -Dproperty=value
语法属性。与直接调用 Ant 类似,此命令默认为 "build.xml"
作为脚本文件,并基于当前目录或传递给 sencha
的 -cwd
开关的值进行搜索。
例如,以下命令使用 "../build.xml"
作为脚本,并在执行默认目标时(因为未指定目标)传入 foo
属性作为 "42"。
sencha -cwd=.. ant -Dfoo=42
--debug
, -d
- 启用 Ant 调试级别消息--file
, -f
- 要执行的 Ant 文件(默认为 build.xml)--props
, -p
- Ant 脚本的一个或多个属性 (name=value,...)--target
, -t
- 要从 Ant 脚本执行的目标(逗号分隔)--verbose
, -v
- 启用 Ant 详细级别消息sencha ant [options] targets...
targets
- 要执行的 Ant 脚本目标此类别包含用于应用程序管理的各种命令。
build
- 执行应用程序的构建过程clean
- 清理应用程序以进行构建emulate
- 通过 Packager 构建应用程序,然后在模拟器/仿真器中执行explain
- 将应用程序入口文件中的引用路径解析为指定的符号init
- 将当前目录初始化为 Sencha Cmd 应用程序。install
- 重新填充 Sencha Cmd 应用程序支架的缺失部分prepare
- 构建应用程序,然后 Packager 准备应用程序以进行本机构建(仅限 cordova)publish
- 将应用程序版本发布到 Sencha Web Application Manager。refresh
- 更新应用程序元数据(又名“引导”)文件run
- 通过 Packager 构建应用程序,然后在设备上执行upgrade
- 将当前应用程序升级到指定的 SDKwatch
- 监视应用程序的文件系统更改并重新构建。此命令构建当前应用程序。
sencha app build [production|testing|native|package]
这将以当前配置构建您的应用程序,并在 "build/<environment>"
文件夹中生成构建输出。此位置和许多其他属性可以在您的应用程序配置文件 ".sencha/app/sencha.cfg"
或提供的构建脚本 "build.xml"
中配置。
为了本地覆盖构建属性,构建脚本会加载一个可选的属性文件 "local.properties"
(如果它存在于您的应用程序文件夹中)。此文件的目的是定义在某种程度上对本地环境(即本地机器)特殊的构建属性。因此,此文件不应在源代码控制中跟踪。
此命令等效于直接运行提供的 Ant 脚本,使用以下命令
sencha ant [production|testing|native|package] build
要调整此过程,请首先查看您的应用程序文件夹中生成的 "build.xml"
。实际的构建逻辑位于 ".sencha/app/build-impl.xml"
中。
如果许多持续集成 (CI) 系统理解 Apache Ant(大多数都理解),则可以使用 "build.xml"
脚本。如果 CI 系统不理解 Ant,则可以使用 Sencha Cmd 命令行,就像您在开发期间一样。但是,如果 CI 系统理解 Ant,则通常使用该集成比使用命令行调用更方便。
--archive
, -a
- 存储所有先前构建的目录路径。--build
, -build
- 选择在 app.json 的 'builds' 集中指定的构建名称,用于构建--clean
, -c
- 在执行构建之前删除先前的构建输出--destination
, -des
- 构建输出写入的目录--development
, -dev
- 将构建环境设置为:development--environment
, -e
- 构建环境,可以是 'development'、'testing' 或 'production'--fashion-debug
, -fashion-d
- 在运行 fashion 构建时启用/禁用 node dev tools。--fashion-symbols
, -fashion-s
- 在 scss 代码中启用/禁用堆栈跟踪。--locale
, -l
- 选择要用于构建的 app.locale 设置--packages
, -pac
- 仅构建 app.json 的 "uses" 属性中指定的一个或多个包--pkg-environment
, -pkg-
- 使用包的构建环境,可以是 'development'、'testing' 或 'production'--pkgdevelopment
, -pkgd
- 将使用包的构建环境设置为:development--pkgproduction
, -pkgp
- 将使用包的构建环境设置为:production--pkgtesting
, -pkgt
- 将使用包的构建环境设置为:testing--production
, -pr
- 将构建环境设置为:production--run
, -r
- 启用自动运行带有本机打包程序的构建--testing
, -te
- 将构建环境设置为:testing--theme
, -th
- 选择要用于构建的 app.theme 设置--uses
, -u
- 构建此应用程序动态使用的包(请参阅 app.json 上的 "uses")sencha app build [options] [theme|locale|build]... [environment]
sencha app clean [theme|locale|build]...
--archive
, -a
- 存储所有先前构建的目录路径。--build
, -build
- 选择在 app.json 的 'builds' 集中指定的构建名称,用于构建--clean
, -c
- 在执行构建之前删除先前的构建输出--destination
, -des
- 构建输出写入的目录--development
, -dev
- 将构建环境设置为:development--environment
, -e
- 构建环境,可以是 'development'、'testing' 或 'production'--locale
, -l
- 选择要用于构建的 app.locale 设置--packages
, -pac
- 仅构建 app.json 的 "uses" 属性中指定的一个或多个包--production
, -pr
- 将构建环境设置为:production--run
, -r
- 启用自动运行带有本机打包程序的构建--testing
, -te
- 将构建环境设置为:testing--theme
, -th
- 选择要用于构建的 app.theme 设置--uses
, -u
- 构建此应用程序动态使用的包(请参阅 app.json 上的 "uses")sencha app emulate [options] [theme|locale|build]... [environment]
--build
, -build
- 选择在 app.json 的 'builds' 集中指定的构建名称,用于构建--development
, -d
- 将构建环境设置为:development--environment
, -e
- 构建环境,可以是 'development'、'testing' 或 'production'--locale
, -l
- 选择要用于构建的 app.locale 设置--production
, -pr
- 将构建环境设置为:production--target-name
, -ta
- 解析引用路径时要使用的目标符号名称--testing
, -te
- 将构建环境设置为:testing--theme
, -th
- 选择要用于构建的 app.theme 设置sencha app explain [options] [theme|locale|build]... [targetName]
此命令将当前目录初始化为 Sencha Cmd 应用程序。
重要提示:在初始化应用程序之前,需要 Sencha 框架或 SDK。这可以是试用版或许可版本,例如从 Sencha 支持门户下载的商业许可版本。以下示例将假定所需的 Sencha 框架已下载并解压缩到主目录 ("~/sencha-sdks"
) 中的 "sencha-sdks"
文件夹中。
要使用 Ext JS 6.5.0 初始化应用程序,在如上所述解压缩 zip 文件后
$ sencha app init --frameworks=~/sencha-sdks [email protected] --universal MyApp
frameworks
开关指定一个文件夹,其中解压缩了多个 Sencha 框架并准备好使用。ext
开关从此目录中选择所需的版本。
要仅使用 Classic 或 Modern 工具包初始化应用程序
$ sencha app init --frameworks=~/sencha-sdks [email protected] --modern MyApp
$ sencha app init --frameworks=~/sencha-sdks [email protected] --classic MyApp
必须指定 --classic
、--modern
或 --universal
开关之一。
该应用程序在首次构建之前将无法运行
sencha app build --dev
有关构建的更多信息,请参阅 sencha help app build
。
为了简化此过程,您可以配置 Sencha Cmd 以始终使用 "~/sencha-sdks"
中的框架,方法是运行以下命令
$ sencha config --prop sencha.sdk.path=~/sencha-sdks --save
执行上述命令后,init
命令简化为
$ sencha app init [email protected] --universal MyApp
有关设置 Sencha Cmd 开关和其他配置选项的更多信息,请查阅 Web 上的“高级 Sencha Cmd”指南
https://extjs.cn/cmd/guides/advanced_cmd/cmd_advanced.html#advanced_cmd-_-cmd_advanced_-_configuration_files
--ext
, -e
- 要使用的 Ext JS 框架的路径--frameworks
, -f
- 包含多个框架版本的目录路径,用于恢复(如果存在于 workspace.json 中)--name
, -n
- 应用程序名称--starter-dir
, -s
- 指定要用作启动器应用程序模板的目录--template-name
, -t
- 指定要用作应用程序模板的包名称sencha app init [options] name
install
命令将重新填充 Sencha Cmd 应用程序支架的缺失部分,例如那些通常不存储在版本控制系统中的部分(例如,Sencha 框架)。
重要提示:在应用程序上运行此命令之前,需要 Sencha 框架或 SDK。所需的框架取决于应用程序使用的版本。这通常是商业许可版本,可以从 Sencha 支持门户下载。以下示例假定必要的 Sencha 框架已下载并解压缩到主目录 ("~/sencha-sdks"
) 中的 "sencha-sdks"
文件夹中。
要在从源代码控制新下载应用程序后(以及在如上所述解压缩框架之后)重新填充应用程序
$ sencha app install --frameworks=~/sencha-sdks
为了简化此过程,您可以配置 Sencha Cmd 以始终使用 "~/sencha-sdks"
中的框架,方法是运行以下命令
$ sencha config --prop sencha.sdk.path=~/sencha-sdks --save
执行上述命令后,install
命令简化为
$ sencha app install
有关设置 Sencha Cmd 开关和其他配置选项的更多信息,请查阅 Web 上的“高级 Sencha Cmd”指南
https://extjs.cn/cmd/guides/advanced_cmd/cmd_advanced.html#advanced_cmd-_-cmd_advanced_-_configuration_files
--frameworks
, -f
- 包含多个框架版本的目录路径,用于恢复(如果存在于 workspace.json 中)sencha app install [options] [frameworks]
--archive
, -a
- 存储所有先前构建的目录路径。--build
, -build
- 选择在 app.json 的 'builds' 集中指定的构建名称,用于构建--clean
, -c
- 在执行构建之前删除先前的构建输出--destination
, -des
- 构建输出写入的目录--development
, -dev
- 将构建环境设置为:development--environment
, -e
- 构建环境,可以是 'development'、'testing' 或 'production'--locale
, -l
- 选择要用于构建的 app.locale 设置--packages
, -pac
- 仅构建 app.json 的 "uses" 属性中指定的一个或多个包--production
, -pr
- 将构建环境设置为:production--run
, -r
- 启用自动运行带有本机打包程序的构建--testing
, -te
- 将构建环境设置为:testing--theme
, -th
- 选择要用于构建的 app.theme 设置--uses
, -u
- 构建此应用程序动态使用的包(请参阅 app.json 上的 "uses")sencha app prepare [options] [theme|locale|build]... [environment]
此命令将使用 sencha manager version create
将应用程序构建目录的内容发布为 Sencha Web Application Manager 应用程序的新版本。
此命令的配置应由 app.json
中的 manager
键提供
"manager": {
"id": 12345,
"host": "https://api.space.sencha.com/json.rpc",
"file": "${app.output.base}",
"apiKey": "...",
"secret": "..."
}
不建议将 apiKey
或 secret
存储在 app.json
中,而是将其存储在此机器本地的文件中(例如 ~/.sencha/cmd/sencha.cfg)。例如
app.manager.apiKey=...
app.manager.secret=...
这将避免将凭据放置在共享的源代码存储库中。
--archive
, -a
- 存储所有先前构建的目录路径。--build
, -build
- 选择在 app.json 的 'builds' 集中指定的构建名称,用于构建--clean
, -c
- 在执行构建之前删除先前的构建输出--destination
, -des
- 构建输出写入的目录--development
, -dev
- 将构建环境设置为:development--environment
, -e
- 构建环境,可以是 'development'、'testing' 或 'production'--locale
, -l
- 选择要用于构建的 app.locale 设置--packages
, -pac
- 仅构建 app.json 的 "uses" 属性中指定的一个或多个包--production
, -pr
- 将构建环境设置为:production--run
, -r
- 启用自动运行带有本机打包程序的构建--testing
, -te
- 将构建环境设置为:testing--theme
, -th
- 选择要用于构建的 app.theme 设置--uses
, -u
- 构建此应用程序动态使用的包(请参阅 app.json 上的 "uses")sencha app publish [options] [theme|locale|build]... [environment]
此命令重新生成包含动态加载器和类系统的“引导”数据的元数据文件。
每次添加、重命名或删除类时,都必须执行此操作。
如果您已向应用程序添加了包要求,则此命令还可以更新任何必需的包。要刷新必需的包(这可能会从远程存储库下载这些包),请执行以下操作
sencha app refresh --packages
很少使用其他参数。
--base-path
, -ba
- 用于计算相对路径信息的基本路径。默认为 index.html 目录--build
, -build
- 选择在 app.json 的 'builds' 集中指定的构建名称,用于构建--development
, -d
- 将构建环境设置为:development--environment
, -e
- 构建环境,可以是 'development'、'testing' 或 'production'--locale
, -l
- 选择要用于构建的 app.locale 设置--metadata-file
, -m
- 包含清单元数据的 js 文件的输出文件名--packages
, -pac
- 从远程存储库更新必需的包--production
, -pr
- 将构建环境设置为:production--testing
, -te
- 将构建环境设置为:testing--theme
, -th
- 选择要用于构建的 app.theme 设置sencha app refresh [options] [theme|locale|build]... [metadata-file]
--archive
, -a
- 存储所有先前构建的目录路径。--build
, -build
- 选择在 app.json 的 'builds' 集中指定的构建名称,用于构建--clean
, -c
- 在执行构建之前删除先前的构建输出--destination
, -des
- 构建输出写入的目录--development
, -dev
- 将构建环境设置为:development--environment
, -e
- 构建环境,可以是 'development'、'testing' 或 'production'--locale
, -l
- 选择要用于构建的 app.locale 设置--packages
, -pac
- 仅构建 app.json 的 "uses" 属性中指定的一个或多个包--production
, -pr
- 将构建环境设置为:production--run
, -r
- 启用自动运行带有本机打包程序的构建--testing
, -te
- 将构建环境设置为:testing--theme
, -th
- 选择要用于构建的 app.theme 设置--uses
, -u
- 构建此应用程序动态使用的包(请参阅 app.json 上的 "uses")sencha app run [options] [theme|locale|build]... [environment]
此命令将当前应用程序(基于当前目录)升级到指定的新框架。
sencha app upgrade /path/to/sdk
要从 Sencha 包存储库下载和解压缩合适的框架,也可以通过名称指定框架
sencha app upgrade -ext
或通过名称和版本指定,以 '@' 字符分隔
sencha app upgrade [email protected]
注意:这将升级当前工作区中当前应用程序使用的框架。这将影响此工作区中使用相同框架(即“ext”或“touch”)的任何其他应用程序。
要仅将应用程序的生成支架升级到新版本的 Sencha Cmd,而不升级正在使用的框架,请省略框架的路径
sencha app upgrade
或使用 --noframework 选项
sencha app upgrade --noframework
--backup
, -b
- 在升级前备份应用程序--full
, -f
- 设置生成的应用程序中是否包含 .sencha 文件夹。--legacy
, -l
- 启用保留 .sencha/app 文件夹结构--minimal
, -m
- 设置生成的应用程序中是否排除 .sencha 文件夹。--noappjs
, -noa
- 禁用 app.js 的升级--noframework
, -nof
- 仅升级 Sencha Cmd 支架,而不升级 SDK--path
, -pa
- 要升级到的框架的路径sencha app upgrade [options] [path]
此命令监视当前应用程序的源代码更改,并重新构建必要的输出以支持“开发模式”。
sencha app watch
这将对 build.trigger.targets ant 属性指定的 ant 目标运行初始传递。在此传递期间,编译器将被检测以捕获用作构建输入的文件(JavaScript、Sass 和页面资源)。
每次在正在监视的目录之一中创建、删除或修改文件时,都会重新触发 Ant 构建目标的一个子集。
Web 服务器会自动启动,并在默认端口 1841 上托管应用程序。
监视过程的高级逻辑在 Ant 中实现。有关详细信息,请参阅 ".sencha/app/watch-impl.xml."
。
有关控制监视过程的可用的 Ant 属性集的信息,请参阅 ".sencha/app/defaults.properties"
。
可以通过使用 -i 或 --inspector 开关启用与 Sencha Inspector 的集成
sencha app watch --inspector
这将向应用程序添加必要的代码,以便使用默认地址 (https://127.0.0.1:1839/) 连接 Sencha Inspector。
可以通过 ${cmd.dir}/sencha.cfg 上的 inspector.address 属性、当前用户配置文件 (~/.sencha/cmd/sencha.cfg) 或使用 config 命令配置默认地址
sencha config --prop inspector.address=http://server:port/ \
then \
app watch --inspector
有关与 Sencha Inspector 集成过程的信息,请参阅:https://extjs.cn/tools/sencha_inspector/
如果应用程序根目录中存在 web.xml 文件,则此命令可以尝试使用它,通过使用 -j, --j2ee 开关来建立 J2EE 应用程序的上下文。
sencha app watch --j2ee
重要的是要注意,此命令仅在 J2EE 应用程序的所有依赖项已在类路径中时才有效,因为 Sencha Cmd 在安装过程中不包含它们。(例如 servlet-api.jar)。
--debug-fashion
, -deb
- 在运行 fashion 构建时启用/禁用 node dev tools。--fashion
, -f
- 在 watch 会话期间启用 Fashion--inspector
, -i
- 在 watch 会话期间启用 Sencha Inspector--j2ee
, -j
- 在服务器根目录中使用 web.xml 文件作为 J2EE 应用程序的上下文。--packages
, -pac
- 从使用的包列表中选择要包含在 watch 集中的包。--port
, -po
- 启动本地服务器的端口号--web-server
, -w
- 启用/禁用应用程序监视 Web 服务器。默认为 'true'。sencha app watch [options] [theme|locale|build]...
此命令扫描从当前目录开始的本地文件系统,并报告 Ext JS 实例及其许可证。
例如
sencha audit
这会搜索包含 "ext-all.js" 的文件夹以及产品附带的许可证。4.0.2 之前的版本未在此文件中包含许可证文本,但附带了单独的 "license.txt" 文件。如果这些文件未被保留,则此报告可能不完整。
sencha audit
从 Sencha Cmd 应用程序或包运行时,此命令的行为将类似于 sencha app build
或 sencha package build
,并接受相同的选项。
如果指定了与旧版基于 JSB 的构建相关的选项(--deploy-dir、--nocompress、--project-file),则会将其执行重定向到 sencha legacybuild
命令。(请参阅 sencha help legacybuild
)
有关详细信息,请参阅 sencha help app build
或 sencha help package build
。
构建应用程序时,此命令接受一个可选的位置参数来指定构建环境
sencha build [options] [theme|locale|build]... [environment (only for apps)]
此命令类别提供 JavaScript 编译命令。compile
类别在其子命令之间维护编译状态,因此使用 and
连接子命令可以比重复调用节省大量时间。
--classpath
, -cl
- 将一个或多个文件夹添加到类路径--debug
, -d
- 为 js 指令解析器启用调试选项--ignore
, -ig
- 忽略类路径中名称包含子字符串的文件(逗号分隔)--input-language-level
, -inp
- 设置默认的输入 js 语言级别。支持的值
--options
, -o
- 设置 js 指令解析器的选项 (name:value,...)
--prefix
, -p
- 包含要从源文件中删除的标头或许可证前缀的文件--temp-directory
, -t
- 控制页面和应用程序命令使用的临时目录根位置concatenate
- 通过连接当前集中的文件来生成输出文件exclude
- 从当前集中排除符合给定条件的文件explain
- 解析两个源文件之间的引用链(如果可用)include
- 将符合给定条件的文件添加到当前集intersect
- 相交指定的已保存集以生成新集metadata
- 生成有关类路径中类和文件的信息page
- 编译标记页面的内容(html、jsp、php 等)pop
- 将当前集从堆栈中弹出回最近推送的集push
- 将当前集推送到堆栈上,以便稍后弹出以恢复当前集require
- 将外部文件添加到 js 编译上下文的文件引用信息restore
- 从先前保存的集中恢复已启用的文件集save
- 按给定的名称存储当前启用的文件集show-ignored
- 显示类路径中任何被忽略的文件union
- 类似于 include,但仅选择符合给定条件的文件此命令将当前集写入指定的输出文件。
--append
, -a
- 将输出附加到输出文件,而不是覆盖输出文件--beautify
, -b
- 启用/禁用编译后源的美化--charset
, -ch
- 为此输出命令指定自定义字符集。--cmd
, -cm
- 使用 Cmd 压缩器压缩生成的文件(默认)。--compress
, -co
- 使用默认压缩器 (cmd) 压缩生成的文件--input-js-version
, -i
- 设置输入 JS 语言级别。支持的值
--js-version
, -j
- 设置输出 JS 语言级别。支持的值
--output-file
, -ou
- 输出文件名(或 $ 表示标准输出)
--remove-text-references
, -remove-t
- 启用/禁用引用优化,方法是将字符串类名转换为静态引用--strip-comments
, -st
- 从生成的文件中删除注释sencha compile concatenate [options] output-file
此命令从当前集中删除任何符合条件的文件。
--all
, -a
- 选择全局缓存中的所有文件(忽略其他选项)--class
, -c
- 根据指定的类名选择文件--file
, -f
- 选择指定的文件名(支持 glob 模式)--include-uses
, -i
- 启用/禁用在传递扫描 (-recursive) 中包含 'uses' 依赖项--json-data
, -j
- 指定要选择的文件的 json 格式数组。--namespace
, -na
- 选择给定命名空间中具有类定义的所有文件--not
, -no
- 反转匹配条件--recursive
, -r
- 在选择文件时启用依赖关系遍历--set
, -s
- 从先前保存的集中选择文件(忽略其他选项)--tag
, -t
- 选择具有指定 '//@tag' 值的所有文件sencha compile exclude [options]
--start-name
, -s
- 设置要用作引用路径起点的符号名称。--target-name
, -t
- 设置要用作引用路径终点的符号名称。sencha compile explain [options] startName \
targetName
此命令将符合条件的文件添加到当前集。
--all
, -a
- 选择全局缓存中的所有文件(忽略其他选项)--class
, -c
- 根据指定的类名选择文件--file
, -f
- 选择指定的文件名(支持 glob 模式)--include-uses
, -i
- 启用/禁用在传递扫描 (-recursive) 中包含 'uses' 依赖项--json-data
, -j
- 指定要选择的文件的 json 格式数组。--namespace
, -na
- 选择给定命名空间中具有类定义的所有文件--not
, -no
- 反转匹配条件--recursive
, -r
- 在选择文件时启用依赖关系遍历--set
, -s
- 从先前保存的集中选择文件(忽略其他选项)--tag
, -t
- 选择具有指定 '//@tag' 值的所有文件sencha compile include [options]
此命令在当前集中生成指定的所有输入集中包含的文件。或者,此命令可以包含在一定最小数量的集中存在的文件。
此命令仅对已保存的集进行操作(与大多数其他集操作不同)。
--min-match
, -m
- 导致匹配的文件所必须存在的最小集合数 (-1 = 全部)--name
, -n
- 用于保存交集作为集的名称--sets
, -s
- 要包含在交集中的集sencha compile intersect [options]
此命令生成从当前文件集中提取的各种形式的元数据。此数据可以导出为各种格式(例如,JSON 或 JSONP)。
选择以下选项之一
--alias
, -ali
- 生成类名到别名信息--alternates
, -alt
- 生成类备用名称信息--definitions
, -d
- 生成符号信息--filenames
, -f
- 生成源文件名信息--loader-paths
, -l
- 生成动态加载器路径信息--manifest
, -m
- 生成类定义清单文件--packages
, -p
- 生成所需包的列表选择以下选项之一
--json
, -json
- 以 JSON 格式生成数据--jsonp
, -jsonp
- 使用给定的函数以 JSONP 格式生成数据--tpl
, -t
- 用于将文件名生成为文本的行模板(例如)--append
, -ap
- 将输出附加到输出文件,而不是覆盖输出文件--base-path
, -ba
- 设置相对路径引用的基本路径--boot-relative
, -bo
- 指示路径相对于引导文件--exclude-disabled
, -e
- 指示仅应处理已启用的 js 源文件--info-type
, -i
- 为此元数据命令选择要操作的信息类型。支持的值
--output-file
, -o
- 输出文件名(或 $ 表示标准输出)
--separator
, -s
- 用于分隔多个模板的分隔符sencha compile metadata [options]
此命令处理标记文件作为输入,并生成一个输出文件,其中某些部分被重写。
如果指定了 -name
选项,则所有必需文件的依赖关系图将保存为具有该名称的文件集(另请参阅 save
命令)。
如果未指定 -name
选项,则所有必需的文件将改为写入 "all-classes.js" 文件。
--append
, -ap
- 将输出附加到输出文件,而不是覆盖输出文件--beautify
, -b
- 启用/禁用编译后源的美化--charset
, -ch
- 为此输出命令指定自定义字符集。--classes-file
, -cla
- 包含连接输出的 js 文件名--cmd
, -cm
- 使用 Cmd 压缩器压缩生成的文件(默认)。--compress
, -co
- 使用默认压缩器 (cmd) 压缩生成的文件--input-file
, -input-f
- 要处理的 html 页面--input-js-version
, -input-j
- 设置输入 JS 语言级别。支持的值
--js-version
, -j
- 设置输出 JS 语言级别。支持的值
--name
, -n
- 设置页面的引用名称
--output-page
, -ou
- 输出 html 页面--remove-text-references
, -remove-t
- 启用/禁用引用优化,方法是将字符串类名转换为静态引用--scripts
, -sc
- 将给定的脚本路径注入到生成的标记中,位于所有类文件之前--strip-comments
, -str
- 从生成的文件中删除注释sencha compile page [options] output-page
此命令从“堆栈”中恢复当前文件集。此状态先前使用 push
命令放置在“堆栈”上。
sencha compile ... \
and push \
and ... \
and pop
and ...
在 push
和 pop
命令之间,可以根据需要调整当前文件集,然后恢复以供后续命令使用。
sencha compile pop
此命令将当前文件集保存在“堆栈”上,以便轻松保存和恢复状态。
sencha compile ... \
and push \
and ... \
and pop
and ...
在 push
和 pop
命令之间,可以根据需要调整当前文件集,然后恢复以供后续命令使用。
sencha compile push
--allow-unmet-dependencies
, -a
- 允许此需求不产生任何文件到文件依赖关系--file-name
, -f
- 指示 -source 参数指定的名称是单个文件路径。--requires
, -r
- 由 -source 参数表示的文件所需的文件名。--source-name
, -so
- 要在其上添加需求的 (类、@tag 或文件) 文件集。--uses
, -u
- 指示此引用是 'uses' 级别引用。sencha compile require [options]
sencha compile restore String
sencha compile save String
显示在 classpath
中找到但与 -ignore
条件匹配的所有文件的列表。
sencha compile show-ignored
此命令将符合条件的文件添加到当前集。这与 include
命令类似,但此命令首先从当前集中删除所有文件。换句话说,此命令使当前集等于仅那些符合条件的文件。
--all
, -a
- 选择全局缓存中的所有文件(忽略其他选项)--class
, -c
- 根据指定的类名选择文件--file
, -f
- 选择指定的文件名(支持 glob 模式)--include-uses
, -i
- 启用/禁用在传递扫描 (-recursive) 中包含 'uses' 依赖项--json-data
, -j
- 指定要选择的文件的 json 格式数组。--namespace
, -na
- 选择给定命名空间中具有类定义的所有文件--not
, -no
- 反转匹配条件--recursive
, -r
- 在选择文件时启用依赖关系遍历--set
, -s
- 从先前保存的集中选择文件(忽略其他选项)--tag
, -t
- 选择具有指定 '//@tag' 值的所有文件sencha compile union [options]
此命令可用于手动设置配置选项,或加载配置文件以设置多个选项。
默认情况下,这些配置选项仅在当前 Sencha Cmd 执行期间保留,这意味着您几乎总是使用 then
来链接将使用修改后的配置执行的命令。
例如,要更改 Ext JS 应用程序构建的主题
sencha config -prop app.theme=theme-neptune then app build
可以从属性文件加载多个属性
sencha config -file neptune.properties then app build
"neptune.properties"
的内容可能如下所示
app.theme=theme-neptune
app.build.dir=${app.dir}/build/neptune
如果要保留给定的属性,如果使用 --save / -s
开关,Sencha Cmd 可以将其写入个人或全局配置文件。
# always enable debug output (this user only, all versions)
sencha config -prop sencha#debug=true --save
要从配置文件中删除属性,只需省略赋值即可
# remove sencha#debug={value} from the configuration file
sencha config -prop sencha#debug --save
要将属性写入全局配置文件,请使用 --global / -g
开关
# always enable debug ouptut (all users, all versions)
sencha config -prop sencha#debug=true --save --global
要列出所有已保存的属性,请使用 --list / -l
开关
sencha config --list
sencha config --list --global
要了解有关 Sencha Cmd 配置文件的更多信息,请参阅以下指南
https://extjs.cn/cmd/guides/advanced_cmd/cmd_advanced.html#advanced_cmd-_-cmd_advanced_-_configuration_files
--file
, -f
- 要加载的属性文件--global
, -g
- 将属性保存/列出到/从全局 cfg 文件(适用于所有用户)--list
, -l
- 列出所有已保存的属性--prop
, -p
- 要设置的一个或多个属性名称和值,省略赋值以删除属性--save
, -s
- 将指定的属性写入用户的 Sencha Cmd 个人配置文件。sencha config [options]
此命令将在 CMD 的未来版本中弃用。请参阅有关通过 app.json 而不是运行这些命令来设置多构建的信息。
Sencha Cmd 与 Cordova CLI 协同工作,以将您的应用程序打包为本机平台。
// Initialize Cordova Support
sencha cordova init {APP_ID} {APP_NAME}
// Build the application and attempt to run it on a Device or in the Emulator
sencha app build -run native
有关将 Sencha Cmd 与 Cordova 一起使用的更多信息,请查阅此处找到的指南
https://extjs.cn/touch/2.3.0/#!/guide/cordova
init
- 向您的应用程序添加 Cordova 支持这将向您的应用程序添加 Cordova CLI 支持。Cordova CLI 支持将允许在本地为多个平台构建本机应用程序。
sencha cordova init {APP_ID} {APP_NAME}
{APP_ID} 是可选的,包含本机应用程序中使用的应用程序 ID。这将默认为 foo.bar.{APP_NAME}
{APP_NAME} 是可选的,包含本机应用程序中使用的应用程序名称。这将默认为您的 sencha touch 应用程序的名称。
有关将 Sencha Cmd 与 Cordova 一起使用的更多信息,请查阅此处找到的指南
https://extjs.cn/touch/2.3.0/#!/guide/cordova
sencha cordova init Object[]...
此命令类别允许您使用 Sencha Cmd 执行诊断操作,这对于调试其他命令执行期间的问题很有用。
export
- 生成一个 zip 文件,其中包含有关构建环境的元数据,用于诊断目的show-props
- 显示配置和环境属性sencha diag export
sencha diag show-props
此命令类别允许您管理当前工作区中的框架。
框架条目在 workspace.json 中的 "frameworks" 属性中定义
"frameworks": {
"ext": "ext",
"ext5": {
"package": "ext@5",
"path": "ext5"
},
"ext6": {
"source": "../frameworks/ext-6.0.0",
"path": "ext-6"
},
"touch242": "../touch-2.4.2"
}
框架条目可以是字符串 (例如:“/path/to/ext” 或 “[email protected]”) 或配置对象,这些对象声明 “package” 或 “source”,以及可选的 “path”。如果未定义 “path”,则框架键(例如:“ext”、“ext6” 将用作路径)。
框架条目键必须以 “ext” 或 “touch” 开头。
add
- 向当前工作区添加框架list
- 列出当前工作区中可用的框架remove
- 从当前工作区中删除框架upgrade
- 升级 workspace.json 中定义的框架并升级使用它的应用程序此命令允许向当前工作区添加框架条目。
路径可以作为参数传递
sencha framework add /path/to/ext
Sencha Cmd 将确定框架的名称和版本,并使用它们生成键(例如:“ext6” 或 “ext501”),默认情况下,此键也将用作工作区内将复制框架到的目录的名称。
包名称可以作为参数传递
sencha framework add ext@n[.n[.n[.n]]]
如果包尚不存在于工作区存储库中,它将被下载并提取到工作区 packages 目录。
由于包名称有时可能不明确(例如,当名为 "ext" 的目录存在时,调用 sencha framework add ext
),可以使用 --package 开关强制将第一个参数视为包名称
# If a directory called "ext" exists it will be added as a framework entry
sencha framework add ext
# It will treat "ext" as package name and act accordingly
sencha framework add --package ext
可选地,框架将被复制到的路径可以作为第二个参数传递
# Will copy the framework to ${workspace.dir}/ext
sencha framework add /path/to/ext ext
# Will copy the framework to ${workspace.dir}/ext5
sencha framework add /path/to/ext-5 ext5
第三个参数可用于指定框架键
# Will add a framework entry with "ext-custom" as key
sencha framework add /path/to/ext my_ext ext-custom
框架键必须以 “ext” 或 “touch” 开头。
--key
, -k
- 将在 workspace.json 上标识此框架的键--package
, -pac
- 即使存在同名目录,也应将 source|package 参数视为包名称--path
, -pat
- 框架将被复制到的目录--source
, -so
- 源目录sencha framework add [options] [source|package] [path] [key]
此命令列出当前命名空间中声明的所有框架。
sencha framework list
此命令允许您从当前工作区中删除框架条目。
sencha framework remove ext6
Sencha Cmd 将确定是否可以删除框架(基于工作区中声明的应用程序是否使用了该框架)。
如果框架源位于工作区外部,则文件将不会被删除,仅删除 workspace.json 中的条目。
如果要删除框架条目而不考虑其使用情况,可以使用 --force 开关
sencha framework remove --force ext6
如果只想删除框架条目并保留其文件(如果在当前工作区内),请使用 --soft 开关
sencha framework remove --soft ext6
--force
, -f
- 强制删除框架条目--soft
, -so
- 不要从文件系统中删除框架(仅适用于存储在工作区内的框架)sencha framework remove [options] [key]
--key
, -k
- 标识要升级的框架的键--meta
, -me
- 仅升级 workspace.json 上的信息--path
, -pa
- 框架将被复制到的目录--source
, -so
- 源目录sencha framework upgrade [options] [key] [source|package] [path]
此类别提供用于操作文件的命令。
mirror
- 用于为 RTL 语言制作镜像图像的命令concatenate
- 将多个文件连接成一个difference
- 以 JSON 格式生成两个文件之间的增量minify
- 缩小 JavaScript 文件slice
- 根据 JSON 清单从给定图像生成图像切片此命令将多个输入文件合并为一个输出文件。
sencha fs concat -to=output.js input1.js input2.js input3.js
--from
, -f
- 要连接的文件列表,以逗号分隔--to
, -t
- 用于写入连接内容的目标文件sencha fs concatenate [options] files...
此命令生成输入文件之间的增量(或“补丁”)文件。
sencha fs diff -from=base.js -to=modified.js -delta=patch
sencha fs difference
此命令使用各种后端压缩器生成缩小后的文件。
sencha fs minify -yui -from=in.js -to=out.js
sencha fs minify -closure -from=in.js -to=out.js
也支持旧语法
sencha fs minify -compressor=yuicompressor -from=in.js -to=out.js
sencha fs minify -compressor=closurecompiler -from=in.js -to=out.js
--cmd
, -cm
- 启用 Cmd 压缩器(默认)。--from
, -f
- 要缩小的输入 js 文件--generate-source-map
, -g
- 启用 SourceMap 生成(仅当与 closure compiler 结合使用时)--level
, -l
- 设置 JS 压缩的语言级别。默认为 ES5。支持的值
--to
, -t
- 缩小输出的目标文件名。
sencha fs minify [options]
用于为 RTL 语言创建图像和精灵水平镜像的命令。
此系列命令旨在自动生成基于手动维护和设计的图像资产的“派生”图像,这些图像资产以更熟悉的从左到右 (LTR) 形式编写。
all
- 根据命名约定水平翻转图像和精灵文件夹image
- 水平翻转图像sprite
- 水平翻转“精灵”(多单元格图像)此命令创建图像和/或精灵文件夹的水平镜像图像。此命令需要一些名称一致性,以便区分输出文件和输入文件以及精灵的几何形状。
精灵必须具有看起来像 "4x3" 的名称段才能定义其几何形状。这被理解为“列” x “行”,或者在本例中为 4 列和 3 行。
以下示例都符合此模式
输入文件和输出文件由必须给定的后缀分隔。输出文件将从应用后缀的输入文件生成。默认情况下,输出文件写入与输入文件相同的文件夹。可以通过指定 “-out” 来更改此设置。
例如
sencha fs mirror all -r -suffix=-rtl /path/to/images
上述命令执行以下操作
"/path/to/images"
(以及所有子文件夹,因为 -r
)以查找图像。"-rtl"
结尾的图像都被视为输入文件。-overwrite
来跳过。"/path/to/images"
。通过传递 -format
开关,可以将输出图像的格式设置为与原始文件格式不同的格式。例如,可以通过传递 -format=gif
将 PNG 文件转换为 GIF 文件。这仅执行基本的图像转换,而不进行高级图像处理。可以使用 -quantize
启用简单的颜色量化。
例如
sencha fs mirror all all -format=gif -ext=png -quantize -out=/out/dir \
-suffix=-rtl /some/pngs
上述命令将处理所有 "png"
图像,并将其 "gif"
版本(使用颜色量化)写入到不同的文件夹。
--dry-run
, -d
- 设置后,将不保存任何图像,但仍会完成所有正常工作--extensions
, -e
- 图像扩展名的逗号分隔列表(默认为 “gif,png”)--format
, -f
- 用于写入所有输出文件的图像格式(例如,“-f=png”)--output-dir
, -ou
- 生成图像的输出文件夹(默认为输入文件夹)--overwrite
, -ov
- 禁用最新检查并始终生成输出文件--quantize
, -q
- 启用基本颜色量化(与 -format=gif 一起使用时很有用)--recurse
, -r
- 递归处理输入文件夹(即,包括子文件夹)--suffix
, -s
- 输出文件的后缀(例如,“-rtl”)sencha fs mirror all [options] File
File
- 要处理的输入文件夹此命令创建给定输入文件的水平镜像图像。
例如
sencha fs mirror image foo.png foo-rtl.png
上述命令从 "foo.png"
创建 "foo-rtl.png"
。
--background-color
, -b
- 颜色量化期间用于删除 alpha 通道的背景颜色--overwrite
, -o
- 禁用最新检查并始终生成输出文件--quantize
, -q
- 启用基本颜色量化(当输出为 gif 时很有用)sencha fs mirror image [options] File \
File
File
- 输入图像File
- 输出图像此命令创建给定精灵中单元格的水平镜像图像。
例如
sencha fs mirror sprite -rows=2 -cols=4 sprite.png sprite-rtl.png
上述命令水平翻转 2x4 精灵 "sprite.png"
中的每个单元格,并生成 "sprite-rtl.png"
。
注意
:需要行数和列数。
--background-color
, -b
- 颜色量化期间用于删除 alpha 通道的背景颜色--columns
, -c
- 精灵中的列数。--overwrite
, -o
- 禁用最新检查并始终生成输出文件--quantize
, -q
- 启用基本颜色量化(当输出为 gif 时很有用)--rows
, -r
- 精灵中的行数。sencha fs mirror sprite [options] File \
File
File
- 输入图像File
- 输出图像此命令执行图像切片和操作,由 JSON 清单文件的内容驱动。清单文件包含图像区域定义的数组,这些定义进一步包含要制作的“切片”集。
此文件和相应的图像通常作为主题包构建的一部分为主题生成。有关此过程的详细信息,请查阅本指南
https://extjs.cn/ext-js/4-2/#!/guide/command_slice
--format
, -f
- 要保存的图像格式 - “png” 或 “gif”(默认)--image
, -i
- 要切片的图像--manifest
, -m
- 切片器清单 (JSON) 文件--out-dir
, -o
- 写入切片图像的根文件夹--quantized
, -q
- 启用图像量化(默认为 true)--tolerate-conflicts
, -t
- 容忍切片清单中的冲突sencha fs slice [options]
此类别包含用于生成应用程序以及向应用程序添加新类的代码生成器。
app
- 生成启动器应用程序controller
- 为当前应用程序生成控制器form
- 为当前应用程序生成表单(Sencha Touch 特有)model
- 为当前应用程序生成模型package
- 生成启动器包profile
- 为当前应用程序生成配置文件(Sencha Touch 特有)theme
- 为切片操作生成主题页面(Ext JS 特有)view
- 为当前应用程序生成视图(Ext JS 特有)workspace
- 初始化多应用程序工作区此命令生成一个空应用程序,给定名称和目标文件夹。
可以使用其他 sencha generate
命令(例如,sencha generate model
)扩展应用程序。
其他应用程序操作在 sencha app
类别中提供(例如,sencha app build
)。
Sencha Cmd 还可以通过指定框架名称作为参数来自动下载和提取框架
sencha generate app -ext MyAppName ./MyAppPath
这将使用指定框架的最新可用版本生成应用程序。
默认情况下,上述命令生成通用应用程序。要覆盖此设置并选择特定的工具包,您可以使用以下变体之一
sencha generate app -ext -classic MyAppName ./MyAppPath
sencha generate app -ext -modern MyAppName ./MyAppPath
--controller-name
, -c
- 默认控制器的名称--library
, -l
- 要使用的预构建库(core 或 all)。默认值:core--name
, -n
- 要生成的应用程序的名称--path
, -p
- 生成的应用程序的路径--refresh
, -r
- 设置为 false 以跳过生成的应用程序的“app refresh”--starter
, -s
- 覆盖默认的 Starter App 模板目录--template
, -te
- 要使用的模板的名称--theme-name
, -th
- 默认主题的名称--view-name
, -v
- 默认视图的名称sencha generate app [options] name \
path
此命令生成一个新的控制器并将其添加到当前应用程序。
--name
, -n
- 要生成的控制器的名称sencha generate controller [options] name
此命令生成一个新的表单并将其添加到当前应用程序。
--fields
, -f
- 以逗号分隔的 “name:type” 字段对列表--name
, -n
- 要生成的表单的名称--xtype
, -x
- 表单的 xtype。默认为名称的小写形式。sencha generate form [options] name \
fields \
[xtype]
此命令生成一个新的模型类并将其添加到当前应用程序。
--base
, -b
- 模型的基类(默认值:Ext.data.Model)--fields
, -f
- 以逗号分隔的 “name:type” 字段对列表--name
, -n
- 模型的名称sencha generate model [options] name \
fields
此命令生成一个新的 Sencha Cmd 包。包在许多方面都类似于应用程序,因为它包含以下任何部分
所有这些都通过使用 sencha package build
的构建过程集成。
例如
sencha generate package foo
如果此命令从应用程序目录运行,则包将自动添加到 "app.json"
文件中的 requires 数组中。要避免这种情况,请使用 -require
开关
sencha generate package -require foo
要在其他应用程序(或包)中使用此包,您只需将包的名称添加到 "app.json"
或 "package.json"
文件中的 requires 数组中
requires: [
'foo'
]
所有包都位于工作区的 "./packages"
文件夹中(该文件夹通常与您的应用程序位于同一文件夹中)。
--extend
, -e
- 要扩展的主题(包)(仅适用于 Ext JS 4.2+ 上的主题类型包)--framework
, -fr
- 此包将使用的框架(即 “ext” 或 “touch”)--name
, -name
- 要生成的包的名称--namespace
, -names
- 要生成的包的命名空间--require
, -r
- 是否自动将生成的包添加到当前应用程序(仅适用于非主题包)--theme
, -th
- 此包将使用的主题(包)(即 “ext-theme-classic”、“ext-theme-crisp”、“ext-theme-neptune” 等)--toolkit
, -to
- 此主题将使用的工具包(仅适用于 Ext JS 6.x+ 上的主题类型包)--type
, -ty
- 要生成的包的类型(即 “code” 或 “theme”) 支持的值sencha generate package [options] name
此命令生成一个新的 Profile 并将其添加到当前应用程序。
注意:仅限 Sencha Touch。
--name
, -n
- 要生成的 Profile 的名称sencha generate profile [options] name
此命令生成一个新的主题。对于 Ext JS 4.1,主题由应用程序“拥有”。在 Ext JS 4.2 及更高版本中,主题是包。
在 Ext JS 4.2 中,主题包可以扩展其他主题。默认情况下,生成的主题扩展 “ext-theme-classic”。可以使用 --extend
覆盖此设置。
要在 Ext JS 4.2 中生成独立的 Theme,请按照以下步骤操作。使用在您的系统上解压缩的 Ext JS 4.2 SDK 生成工作区(带有 "ext"
文件夹)
sencha -sdk /path/to/ext-4.2.0 generate workspace MyWorkspace
cd MyWorkspace
从工作区内部,使用 "ext"
文件夹生成主题包
sencha -sdk ext generate theme --extend ext-theme-neptune MyTheme
以上操作可以等效地使用用于创建工作区的 SDK。
此处使用 -sdk
开关来指示主题所基于的框架。如果命令是从 Ext JS 应用程序文件夹运行的,则不需要此开关。
注意:
不适用于 Sencha Touch。
--extend
, -e
- 要扩展的主题包的名称(仅限 Ext JS 4.2+)--name
, -n
- 要生成的主题的名称--toolkit
, -t
- 此主题适用的工具包的名称(仅限 Ext JS 6.x+)sencha generate theme [options] name
此命令生成一个新的视图类并将其添加到当前应用程序。
--base-class
, -b
- 指定视图的基类(默认值:'Ext.panel.Panel')--name
, -n
- 要生成的视图的名称sencha generate view [options] name
此命令生成一个工作区,用于管理跨页面或应用程序的共享代码。
--force
, -fo
- 强制将框架重新提取到工作区中。--full
, -fu
- 启用完整模式,其中包括 .sencha 文件夹。--minimal
, -mi
- 启用最小模式(无 .sencha 文件夹)。--path
, -pa
- 设置工作区的目标路径sencha generate workspace [options] [path]
此命令显示其他命令的帮助。
sencha help generate app
sencha help command...
command
- 要显示帮助的命令路径(例如,“generate app”)此命令加载并执行指定的 JavaScript 源文件。
sencha js file.js[,file2.js,...] [arg1 [arg2 ...] ]
此命令的第一个参数是要执行的文件。如果有多个文件,请用逗号分隔它们。除了指定文件的命令行技术外,此命令还识别以下指令
//@require ../path/to/source.js
这种形式的 require
指令使用基于包含该指令的文件的相对路径。任何给定文件都只会被执行一次,这与编译器的方式非常相似。
为 JavaScript 执行上下文提供了一个原始的 console
对象,其中包含以下方法
log
debug
info
warn
error
dir
trace
time
/ timeEnd
第一个参数之后的参数可以使用全局 $args
数组在 JavaScript 中访问。当前目录可以使用 $curdir
访问。
Sencha Cmd 对象可以使用 sencha
访问。此对象具有 version
属性和 dispatch
方法。
if (sencha.version.compareTo('3.0.0.210') < 0) {
console.warn('Some message');
} else {
// dispatch any command provided by Cmd:
sencha.dispatch([ 'app', 'build', $args[1] ]);
}
除了以上内容,执行的 JavaScript 可以使用 importPackage
和 importClass
方法完全访问 JRE。
例如
importPackage(java.io);
var f = new File('somefile.txt'); // create a java.io.File object
有关 Java 提供的 JavaScript 引擎的更多详细信息,请查阅 Java Scripting 指南
http://docs.oracle.com/javase/6/docs/technotes/guides/scripting/programmer_guide/index.html
sencha js String \
String[]...
此类别提供用于与 Sencha Web Application Manager 交互的命令
version
- 用于管理应用程序版本的命令。此类别提供用于管理应用程序版本的命令
create
- 在 Sencha Web Application Manager 中创建新的应用程序版本。在 Sencha Web Application Manager 中配置指定应用程序的新版本。
此命令接受 zip 文件或目录的路径,并将内容发布到 Sencha Web Application Manager 作为新的应用程序版本。
--api-key
, -a
- 用于与 Sencha Web Application Manager 服务器通信的 API 密钥。--file
, -f
- 要发布为新应用程序版本的 zip 文件或文件夹的路径。--host
, -h
- Sencha Web Application Manager 服务器的主机 URL。--id
, -i
- Sencha Web Application Manager 应用程序的 ID。--name
, -n
- 要创建的版本名称。--secret
, -s
- 用于加密与 Sencha Web Application Manager 服务器通信的共享密钥。sencha manager version create [options]
此类别提供用于管理应用程序清单的命令。
create
- 为给定目录中找到的所有类生成元数据列表此命令为所有类生成元数据列表。
--output-path
, -o
- 将结果写入到的 JSON 格式的文件路径。--path
, -p
- 包含所有类的目录路径sencha manifest create [options] output-path
这些命令管理本地存储库中的包。
这些命令通常不直接使用,因为应用程序需求由 sencha app build
和 sencha app refresh --packages
自动使用以处理这些细节。
使用包所需的最常见命令是将您的本地包存储库连接到远程存储库的命令。默认情况下,本地存储库定义了一个指向 Sencha 包存储库的远程存储库。
要添加、删除或显示这些连接,请参阅
sencha help package repo
但是,当为他人编写包以在其应用程序中使用时,将涉及到这些命令。特别是,您必须首先初始化您的本地包存储库。这是因为本地存储库会自动“匿名”初始化。在这种状态下,本地存储库只能用于检索和缓存其他包。要创建和发布包,必须使用名称和可选的电子邮件地址初始化本地存储库。
此名称不需要全局唯一,但最好使用一个唯一且有意义的名称作为包作者。
sencha repository init -name "My Company, Inc."
sencha repository init -name mySenchaForumId
有关详细信息,请参阅
sencha help repository init
add
- 将包文件 (.pkg) 添加到本地存储库build
- 构建当前包extract
- 将包的内容提取到输出文件夹get
- 从远程存储库获取包install
- 安装 Sencha Cmd 扩展包list
- 列出存储库中的包remove
- 从本地存储库中删除包upgrade
- 升级当前包将新的包文件 ("*.pkg"
) 添加到本地存储库。如果这些包的 creator
属性与与本地存储库关联的 name
匹配,则会自动对其进行签名。
一旦将包添加到本地存储库,任何指向此存储库作为远程存储库的存储库都将能够下载该包。
sencha package build
过程在 workspace.build.dir
中生成一个合适的 ".pkg"
文件。
sencha package add pkgFile
pkgFile
- 包文件的路径(例如,path/file.pkg)此命令调用当前包的构建过程。与应用程序和 sencha app build
类似,此命令构建当前包(由当前文件夹定义)。
sencha package build
--build
, -build
- 选择在 'builds' package.json 集中指定的构建名称以用于构建--clean
, -c
- 在执行构建之前删除先前的构建输出--destination
, -des
- 构建输出写入的目录--fashion-debug
, -fashion-d
- 在运行 fashion 构建时启用/禁用 node dev tools。--fashion-symbols
, -fashion-s
- 在 scss 代码中启用/禁用堆栈跟踪。--locale
, -l
- 选择要用于构建的 package.locale 设置--theme
, -th
- 选择要用于构建的 package.theme 设置sencha package build [options] [theme|locale|build]...
此命令从存储库中提取一个或多个包。如果需要,将从远程存储库下载包并在本地缓存以供将来使用。
注意:
这通常 不
手动执行,而是基于在 "app.json"
和/或 "package.json"
中找到的 “requires” 作为构建过程的一部分自动处理。
要将名为 “foo” 的版本为 “1.2” 的包提取到指定位置
sencha package extract -todir=/some/path [email protected]
这将创建 "/some/path/foo"
。要递归提取 “foo” 所需的包,您可以执行以下操作
sencha package extract -recurse -todir=/some/path [email protected]
完成后,“foo” 及其所有必需的包都将驻留在指定的文件夹中。
注意:
建议使用 -todir
并允许包名称用作该文件夹的直接子目录。-outdir
选项允许您剥离此目录,但这会阻止递归提取。
--clean
, -c
- 在提取之前删除输出文件夹中的任何文件--force
, -f
- 忽略本地副本并从远程存储库获取--outdir
, -o
- 提取的包内容的输出文件夹--recurse
, -r
- 还要递归获取所有必需的包--todir
, -t
- 提取的包文件夹的输出文件夹sencha package extract [options] packages...
packages
- 要提取的包的名称/版本此命令确保指定的包在本地可用。这 不
会将包提取到特定位置,而是使应用程序或其他包能够从本地存储库获取包(即,无需下载)。
例如,要确保 "foo"
和 "bar"
在本地可用
sencha package get foo bar
要获取那些指定的包所需的所有包
sencha package get -recursive foo bar
--force
, -f
- 忽略本地副本并(重新)从远程存储库获取--recurse
, -r
- 还要递归获取所有必需的包sencha package get [options] packages...
packages
- 要在本地获取的一个或多个包/版本--clean
, -c
- 在提取之前删除输出文件夹中的任何文件--force
, -f
- 忽略本地副本并从远程存储库获取sencha package install [options] String[]...
String[]
- 要安装的包的名称/版本此命令列出存储库中的包。要列出可用的包,只需执行
sencha package list
要列出本地可用的包(无需下载),请执行以下操作
sencha package list .
否则,您可以指定要列出的包存储库的名称
sencha package list sencha
以上操作将列出 Sencha Cmd 包存储库的内容。
sencha package list names...
names
- 要列出的存储库(空白表示全部,或远程名称或 “.” 表示本地)从本地存储库中删除一个或多个包。
删除包 “foo” 的版本 1.2
sencha package remove [email protected]
删除 “foo” 的所有版本
sencha package remove foo@...
sencha package remove packageNames...
packageNames
- 要删除的一个或多个包/版本将当前包升级到较新的 SDK 或 Sencha Cmd 版本。
此命令必须从所需的包文件夹中运行。
--full
, -f
- 设置生成的应用程序中是否包含 .sencha 文件夹。--legacy
, -l
- 启用保留 .sencha/package 文件夹结构--minimal
, -m
- 设置生成的应用程序中是否排除 .sencha 文件夹。sencha package upgrade [options]
此命令将在 CMD 的未来版本中弃用。请参阅有关通过 app.json 而不是运行这些命令来设置多构建的信息。
Sencha Cmd 与 PhoneGap CLI 协同工作,以将您的应用程序打包为原生平台。PhoneGap CLI 允许在本地和通过 PhoneGap Build 远程构建原生应用程序。您可以在此处找到有关 PhoneGap Build 的更多信息
https://build.phonegap.com/
要将 PhoneGap 支持添加到您的应用程序,只需在您的应用程序目录中运行以下命令
// Initialize PhoneGap Support
sencha phonegap init {APP_ID} {APP_NAME}
// Build the application and attempt to run it on a Device or in the Emulator
sencha app build -run native
有关将 Sencha Cmd 与 PhoneGap 结合使用的更多信息,请查阅此处找到的指南
https://extjs.cn/touch/2.3.0/#!/guide/cordova
init
- 将 PhoneGap 支持添加到您的应用程序这将为您的应用程序添加 PhoneGap CLI 支持。PhoneGap CLI 支持将允许在本地和远程为多个平台构建原生应用程序。
sencha phonegap init {APP_ID} {APP_NAME}
{APP_ID} 是可选的,包含本机应用程序中使用的应用程序 ID。这将默认为 foo.bar.{APP_NAME}
{APP_NAME} 是可选的,包含本机应用程序中使用的应用程序名称。这将默认为您的 sencha touch 应用程序的名称。
有关将 Sencha Cmd 与 PhoneGap 结合使用的更多信息,请查阅此处找到的指南
https://extjs.cn/touch/2.3.0/#!/guide/cordova
sencha phonegap init Object[]...
这些命令管理本地存储库及其与远程存储库的连接。
本地存储库的主要作用是作为从一个或多个指定的远程存储库下载的包的缓存。默认情况下,Sencha Cmd 将 Sencha 包存储库添加为远程存储库。使用这些命令,您可以管理这些连接。
此命令添加名为 "foo"
的远程存储库连接
sencha repo add foo http://coolstuff.foo/packages
执行此命令后,将可以使用此存储库中包含的任何包。通常,通过将它们的名称(以及可能的版本)添加到应用程序的 "app.json"
的 requires
数组中来使用这些包。
{
requires: [
'[email protected]'
]
}
然后
sencha app build
以上添加将需要版本 2.1 的 "cool-package"
。将检查上面添加的远程存储库中是否包含此包,如果找到,则会将其下载到本地存储库并在其中缓存,并提取到您的应用程序的 "packages/cool-package"
文件夹中,并自动集成到您的构建中。
要为他人编写包以在其应用程序中使用,您将需要使用您的姓名初始化本地存储库
sencha repo init -name "My Company, Inc."
有关更多详细信息,请参阅这些
sencha help package
sencha help repo init
add
- 添加远程存储库连接init
- 初始化本地包存储库list
- 列出远程存储库连接remove
- 删除远程存储库连接show
- 显示存储库的详细信息sync
- 清除缓存以强制重新获取远程存储库添加远程存储库连接。添加后,来自该存储库的包将可供应用程序使用。
sencha repo add foo http://foo.bar/pkgs
--address
, -a
- 远程存储库的地址(或 URL)--beta
, -b
- 指示此新存储库包含 beta 包--name
, -n
- 远程连接的名称sencha repository add [options] name \
address
初始化本地存储库。本地存储库用于缓存包的本地副本(可能用于多个版本)。
注意:
此步骤通常不是必需的,因为本地存储库会自动在 “匿名” 模式下初始化。仅当您想要发布包供他人在其应用程序中使用时才需要此命令。要发布包,您必须初始化本地存储库并提供名称
sencha repository init -name "My Company, Inc." -email [email protected]
除了初始化存储库文件结构外,此命令还会生成公钥/私钥对并将它们存储在本地存储库中。私钥用于对添加到此本地存储库的包进行签名。
有关添加包的详细信息
sencha help package add
添加到本地存储库的 creator
属性等于赋予 sencha repository init
的名称的包将使用存储在本地存储库中的私钥进行签名。
在此 Sencha Cmd 版本中,这些签名仅用于测试包的完整性。您可以根据需要备份此密钥,但可以通过随时运行 sencha repo init
重新生成新密钥。在未来的版本中,备份您的私钥可能更重要。
要使本地包存储库可用作远程存储库供他人访问,需要一些关于存储库磁盘结构的知识。默认情况下,Sencha Cmd 在其安装文件夹附近创建本地存储库。例如,给定 Sencha Cmd 的以下位置
/Users/myself/bin/Sencha/Cmd/3.1.0.200/
本地存储库位于
/Users/myself/bin/Sencha/Cmd/repo
这是为了允许您的本地存储库被较新版本的 Sencha Cmd 使用。要发布给其他人作为 HTTP URL 的文件夹是
/Users/myself/bin/Sencha/Cmd/repo/pkgs
重要提示:
不要
公开 "pkgs"
的父文件夹 - 该文件夹包含私有信息(例如您的私钥)。此外,Sencha Cmd 将无法识别该结构为有效的远程存储库。
如果您想在公共服务器上托管存储库,只需将 "pkgs"
文件夹复制到 Web 服务器并共享 HTTP 地址。
--email
, -em
- 本地存储库所有者的电子邮件地址--expiration
, -ex
- 密钥对失效前的年数--keybits
, -k
- 公钥/私钥对的位数--name
, -n
- 本地存储库所有者的名称sencha repository init [options]
列出所有远程存储库连接。
sencha repository list
从本地存储库的远程存储库列表中删除远程存储库。例如,如果之前添加了远程存储库
sencha repo add foo http://foo.bar/pkgs
此命令将删除它
sencha repo remove foo
注意:
此命令不会删除您可能从此远程下载的包,因为它们现在已缓存在本地存储库中。
--name
, -n
- 远程连接的名称sencha repository remove [options] name
显示有关远程存储库的信息。
要显示有关本地存储库的信息
sencha repo show .
要显示有关特定远程存储库的信息
sencha repo show some-remote
给定的名称应与之前赋予的名称匹配
sencha repo add some-remote ...
--all
, -a
- 包括有关存储库的所有详细信息sencha repository show [options] names...
names
- 远程存储库的名称(或 “.” 表示本地)强制与远程存储库目录(重新)同步。通常,这是定期完成的,不需要手动同步。如果已知已将某些内容添加到远程存储库但尚未显示在此计算机上的目录中,则可能需要此命令。
sencha repo sync someremote
要与所有远程存储库重新同步
sencha repo sync
--name
, -n
- 远程连接的名称(空白表示全部)sencha repository sync [options] [name]
此命令允许您在上次安装的 Sencha Cmd 的父目录中存在的 Sencha Cmd 版本之间切换。
要查看本地可用版本的列表,请使用 “list” 开关,此命令还将显示期望版本存在的路径
sencha switch --list
要切换到最新的本地可用版本,请在不带参数的情况下运行该命令
sencha switch
要切换到特定版本,请将其作为参数传递
sencha switch {version}
--list
, -l
- 列出可用版本sencha switch [options] [version=""]
此类别提供用于处理模板的命令
apply
- 应用模板以生成其输出info
- 此命令显示有关模板的所有可用信息list
- 此命令列出当前工作区中的所有现有模板read
- 读取 JSON 文件以提供模板的数据--data
, -d
- 设置名称/值对(也可以使用 -Dname=value)--name
, -n
- 模板的名称--output
, -o
- 输出目录sencha template apply [options] name
--name
, -n
- 模板的名称sencha template info [options] name
sencha template list
--name
, -n
- 要加载的 JSON 文件的名称sencha template read [options] [name]
此类别包含用于管理主题的底层命令。通常,这些操作由 sencha app build
和/或 sencha package build
处理。
build
- 从给定页面构建自定义主题capture
- 捕获主题的图像和 slicer 清单slice
- 根据 JSON 清单从给定图像生成图像切片此命令将构建指定主题的图像精灵。
重要提示
:此命令仅应用于 Ext JS 4.1 应用程序。对于 Ext JS 4.2 应用程序,主题现在是 packages
,应使用 sencha package build
过程进行管理。
--environment
, -en
- 构建环境(例如,production 或 testing)--output-path
, -o
- 切片图像的目标路径--page
, -p
- 要切片的页面--theme-name
, -t
- 要构建的主题的名称sencha theme build [options] [theme-name] \
[environment]
此命令将捕获指定页面的图像和切片清单。
很少需要直接调用此命令,因为它是主题构建过程的一部分。在 Ext JS 4.2 应用程序或主题包中,此命令由构建脚本的 slice
步骤调用。在 Ext JS 4.1 应用程序中,为每个应用程序主题或直接由 “sencha theme build” 命令调用此命令。
例如,这大致是主题包的 slice
步骤执行的命令
sencha theme capture -page sass/example/theme.html \
-image build/theme-capture.png \
-manifest build/theme-capture.json
一旦生成图像和 slicer 清单,sencha fs slice
命令将提取 Internet Explorer 所需的背景图像和精灵。
--base
, -b
- 设置用于解析相对路径的基目录。--image-file
, -i
- 输出图像(例如 “theme-capture.png”)--manifest
, -m
- 输出切片清单(例如 “theme-capture.json”)--page
, -p
- 要加载以捕获主题内容的页面sencha theme capture [options]
此命令执行图像切片和操作,由 JSON 清单文件的内容驱动。清单文件包含图像区域定义的数组,这些定义进一步包含要制作的“切片”集。
此文件和相应的图像通常作为主题包构建的一部分为主题生成。有关此过程的详细信息,请查阅本指南
https://extjs.cn/ext-js/4-2/#!/guide/command_slice
--format
, -f
- 要保存的图像格式 - “png” 或 “gif”(默认)--image
, -i
- 要切片的图像--manifest
, -m
- 切片器清单 (JSON) 文件--out-dir
, -o
- 写入切片图像的根文件夹--quantized
, -q
- 启用图像量化(默认为 true)--tolerate-conflicts
, -t
- 容忍切片清单中的冲突sencha theme slice [options]
此命令下载并安装当前版本的 Sencha Cmd。或者您可以指定要安装的版本作为命令的一部分。
以下命令下载并安装当前版本的 Sencha Cmd
sencha upgrade
此命令下载特定版本
sencha upgrade 3.0.2.288
如果请求的版本是已安装的版本,则默认情况下,此命令将不执行任何操作。可以使用 --force
强制执行。
sencha upgrade --force
如果请求的版本是 PATH
中的版本,则该命令将退出并显示一条消息,指示无法升级当前版本。在这种情况下,--force
选项将被忽略。
--all
, -a
- 安装所有可选组件--beta
, -b
- 检查最新的 beta 或 RC 版本(与稳定版本相对)--check
, -c
- 仅检查升级,但不安装--force
, -f
- 即使版本已安装也强制(重新)安装--nojre
, -n
- 仅限 Windows 和 Mac:使用不带捆绑 JRE 的安装程序(保持当前 JRE 使用)--unattended
, -u
- 以静默/无人值守模式运行安装程序sencha upgrade [options] [version=""]
此类别提供用于管理基于 Jetty
的简单 HTTP 文件服务器的命令(请参阅 http://www.eclipse.org/jetty/)。
以下命令是最简单的形式
sencha web start
这将在默认端口上启动 Web 服务器,并将当前目录 “挂载” 为 Web 根目录。此命令将阻止终端,因此您可以使用 CTRL+C 结束该进程。
如果这是作为后台进程启动的,则可以使用此命令从另一个终端停止服务器
sencha web stop
可以从命令行或使用配置属性 cmd.web.port
指定使用的端口。例如
sencha web -port 8080 start
并停止上述操作
sencha web -port 8080 stop
有关 Web 根目录的详细信息,请参阅 sencha web start
上的控制台帮助
sencha help web start
注意: 这些是不相关于当前应用程序的底层命令。对于应用程序,请考虑使用 sencha ant web-start
和 sencha ant web-stop
的 web-start
目标。
当使用 sencha app watch
命令时,将自动启动 Web 服务器,因此 sencha web start
或 sencha ant web-start
命令都不是必需的
--port
, -p
- 设置 Web 服务器的端口--ssl-port
, -s
- 设置 Web 服务器的端口start
- 在端口上启动静态文件 Web 服务器stop
- 停止特定端口上的本地 Web 服务器此命令启动 Web 服务器并将请求路由到指定的文件。例如
sencha web start
这将在默认端口将当前目录 “挂载” 为 Web 根目录。如果需要,可以指定端口
sencha web -port 8000 start
要停止服务器,请按 CTRL+C,或者您可以分别使用以下命令(从另一个终端)
sencha web stop
sencha web -port 8000 stop
默认情况下,sencha web start
挂载当前目录,以便所有文件和文件夹都可以在 Web 服务器 URL 的根目录中使用。有时您可能需要将各种文件夹连接到公共 Web 根目录中。为此,请使用 -map
开关,如下所示
sencha web start -map foo=/path/to/foo,bar=/another/path
给定以上内容,在浏览器中输入的以下 URL 将显示 "/path/to/foo"
中的文件
https://127.0.0.1:8000/foo
此 URL 将显示 "/another/path"
中的文件
https://127.0.0.1:8000/bar
有关 Sencha Cmd
Web 服务器的更多详细信息,请运行以下命令
sencha help web
注意: 这些是不相关于当前应用程序的底层命令。对于应用程序,请考虑使用 sencha ant web-start
和 sencha ant web-stop
的 web-start
目标。
如果应用程序根目录中存在 web.xml 文件,则此命令可以尝试使用它,通过使用 -j, --j2ee 开关来建立 J2EE 应用程序的上下文。
sencha web start --j2ee
重要的是要注意,此命令仅在 J2EE 应用程序的所有依赖项已在类路径中时才有效,因为 Sencha Cmd 在安装过程中不包含它们。(例如 servlet-api.jar)。
--cmd-mount
, -c
- 启用将 cmd 安装目录映射为 /~cmd。--j2ee
, -j
- 在服务器根目录中使用 web.xml 文件作为 J2EE 应用程序的上下文。--mappings
, -m
- 本地文件夹列表(例如:[sub=]/path/to/folder)sencha web start [options]
此命令停止先前由 sencha web start
启动的 Web 服务器。
如果服务器是通过此命令启动的
sencha web start
此命令将停止该服务器
sencha web stop
如果您使用的是自定义端口,则这些端口必须匹配。例如
sencha web -port 8000 start
从另一个终端或控制台,这将停止服务器
sencha web -port 8000 stop
注意: 这些是不相关于当前应用程序的底层命令。对于应用程序,请考虑使用 sencha ant web-start
和 sencha ant web-stop
的 web-start
目标。
sencha web stop
此命令显示 Sencha Cmd 的位置。
sencha which
C:\Users\Me\bin\Sencha\Cmd\3.1.0.220
--output
, -o
- 用于写入位置作为属性的输出属性文件的名称--property
, -p
- 要写入输出属性文件中位置的属性名称sencha which [options]
此命令类别允许您管理当前工作区。
当前工作区由当前目录或其任何父目录中是否存在 workspace.json 文件来确定。
cleanup
- 删除工作区 cfg 文件中不再引用现有应用程序的应用程序条目。init
- 将当前目录初始化为 Sencha Cmd 工作区。install
- 重新填充当前工作区中任何 Sencha Cmd 应用程序或框架的缺失部分upgrade
- 对工作区中的所有应用程序和包执行 upgrade
。此命令删除工作区 "workspace.json"
文件中不再引用现有应用程序的任何应用程序条目。
$ sencha workspace cleanup
(可选)通过使用 --frameworks
开关,它可以删除工作区中不再存在的框架条目(即,目录已被手动删除),并且不再被工作区中的任何应用程序使用。
$ sencha workspace cleanup --frameworks
--apps
, -a
- 从 workspace.json 中删除过期的应用程序条目。默认为 true。--frameworks
, -f
- 从 workspace.json 中删除过期的框架条目。sencha workspace cleanup [options]
此命令将当前目录初始化为 Sencha Cmd 工作区。
如果在现有工作区内运行,则不会发生任何事情。
sencha workspace init
install
命令将重新填充当前工作区中任何 Sencha Cmd 应用程序或框架的缺失部分。 这些部分通常不存储在版本控制系统中(例如,Sencha 框架)。
重要提示 在工作区上运行此命令之前,需要 Sencha 框架或 SDK。所需的框架取决于工作区中各种应用程序的需求。这通常是商业许可版本,可以从 Sencha 支持门户下载。以下示例假设必要的 Sencha 框架已下载并解压缩到主目录 ("~/sencha-sdks"
) 中的 "sencha-sdks"
文件夹中。
此命令将在 "workspace.json"
的 apps
属性中列出的所有应用程序上运行 sencha app install
$ sencha workspace install --frameworks=~/sencha-sdks
为了简化此过程,您可以配置 Sencha Cmd 以始终使用 "~/sencha-sdks"
中的框架,方法是运行以下命令
$ sencha config --prop sencha.sdk.path=~/sencha-sdks --save
执行上述命令后,install
命令简化为
$ sencha workspace install
有关设置 Sencha Cmd 开关和其他配置选项的更多信息,请查阅 Web 上的“高级 Sencha Cmd”指南
https://extjs.cn/cmd/guides/advanced_cmd/cmd_advanced.html#advanced_cmd-_-cmd_advanced_-_configuration_files
--frameworks
, -f
- 包含要从中恢复的多个框架版本的目录路径--shallow
, -s
- 执行浅层安装(仅工作区级别)sencha workspace install [options] [frameworks]
此命令对工作区中的所有应用程序和包执行 upgrade
。
要升级框架,请使用 sencha framework upgrade
。有关更多信息,请参阅 sencha help framework upgrade
。
要升级一个应用程序的框架,请使用 sencha app upgrade
。有关更多信息,请参阅 sencha help app upgrade
。
--shallow
, -s
- 仅升级工作区元数据,跳过应用程序和包sencha workspace upgrade [options]