Sencha Cmd使用指南

查看Cmd版本

使用 sencha 命令查看當(dāng)前cmd版本信息

sencha

顯示如下

Sencha Cmd v6.1.2.15
Sencha Cmd provides several categories of commands and some global switches. In
most cases, the first step is to generate an application based on a Sencha SDK
such as Ext JS or Sencha Touch:

    sencha -sdk /path/to/sdk generate app MyApp /path/to/myapp

Sencha Cmd supports Ext JS 4.1.1a and higher and Sencha Touch 2.1 and higher.

To get help on commands use the help command:

    sencha help generate app

For more information on using Sencha Cmd, consult the guides found here:

http://docs.sencha.com/cmd/

使用Sencha Cmd創(chuàng)建Extjs 6項(xiàng)目

以下使用指南,從新建一個(gè)ExtjsWebapp 開始,到運(yùn)行應(yīng)用程序結(jié)束

創(chuàng)建Extjs應(yīng)用程序

sencha -sdk /path/to/ext6 generate app MyApp /path/to/my-app

打開cmd,通過以上命令創(chuàng)建應(yīng)用程序,-sdk 參數(shù)后面是你Extjs6的安裝路徑,/path/to/my-app 是生成項(xiàng)目的路徑
通過以上命令生成的項(xiàng)目會(huì)有以下的目錄結(jié)構(gòu).

.sencha/                                  # Sencha具體的配置文件目錄 (主要配置) 
      app/                                # 應(yīng)用程序相關(guān)的配置
              sencha.cfg                  # Sencha Cmd 應(yīng)用程序的配置文件 
              Boot.js                     # Private, low-level dynamic loader for JS and CSS 
              Microloader.js              # 基于app.json加載app
              build-impl.xml              # 應(yīng)用程序構(gòu)建腳本
              *-impl.xml                  # 各個(gè)構(gòu)建階段的執(zhí)行腳本
              defaults.properties         # 構(gòu)建項(xiàng)目時(shí)的默認(rèn)值和說明
              ext.properties              # Extjs的構(gòu)建屬性和說明 
              *.defaults.properties       # 各種環(huán)境的構(gòu)建屬性(列入package.defaults.properties)
              plugin.xml                  # Sencha Cmd 應(yīng)用級(jí)別的插件
              codegen.json                # 在更新時(shí)合并生成代碼時(shí)的記錄
      workspace/                          # workspace的相關(guān)配置
              sencha.cfg                  # Sencha Cmd 工作空間的配置文件
              plugin.xml                  # Workspace-level  Sencha Cmd 工作空間級(jí)別的插件
ext/                                      # 一份Extjs Jdk的拷貝
      cmd/                                # Sencha Cmd 針對(duì)框架的內(nèi)容 
              sencha.cfg                  # Sencha Cmd 框架配置文件 
      classic/                            # 與classic工具包相關(guān)的包
              classic/                    # Extjs classic 工具包
              theme-neptune/              # Neptune主題工具包
              theme-triton/               # Triton主題工具包   
      modern/                             # 與modern工具包相關(guān)的包
              modern/                     # Ext JS Modern 工具包
              theme-neptune/              # Neptune主題工具包 
              theme-triton/               # Triton主題工具包 
      packages/                           # 框架提供的包
              charts/                     # 圖表 package 
              ux/                         # Extjs 命名空間ux相關(guān)的包
index.html                                # 應(yīng)用程序入口
app.json                                  # Application manifest應(yīng)用程序描述文件
app.js                                    # 運(yùn)行應(yīng)用程序的類文件繼承自Application.js
app/                                      # 應(yīng)用程序MVC模式的源代碼 
      model/                              # model 層代碼 
      store/                              # store層代碼(dao層)
      view/                               # 視圖層代碼
              main/                       # 主頁面相關(guān)視圖代碼
                       Main.js            # 主視圖
                       MainModel.js       # 主視圖的視圖模型 
                       MainController.js  # 主視圖的空間邏輯代碼
             Application.js               # 應(yīng)用程序類文件
packages/                                 # Sencha Cmd 相關(guān)的包
workspace.json                            # Workspace 描述文件
build/                                    # 構(gòu)建項(xiàng)目的輸出目錄

打包Web程序

sencha app build

這個(gè)命令將打包你的html、js、主題文件代碼到build文件夾
注意: 執(zhí)行以上命令必須在Extjs應(yīng)用程序根目錄下

開發(fā)模式

Sencha Cmd 可以基于應(yīng)用程序的app.json文件和源代碼生成一個(gè)引導(dǎo)文件(bootstrap).引導(dǎo)程序會(huì)傳遞相關(guān)信息給動(dòng)態(tài)類加載器(Ext.loader和Microloader),引導(dǎo)程序并不需要手動(dòng)的去維護(hù)它.
引導(dǎo)程序不會(huì)受到你JavaScript源代碼的影響,所以正常的工作流程,比如編輯、保存、重新加載、復(fù)制可以使引導(dǎo)程序像預(yù)期的那樣工作.但是修改樣式、移動(dòng)或者重命名Js的文件將使引導(dǎo)信息失效另外生成CSS需要運(yùn)行程序.

有兩種基本的途徑可以更新引導(dǎo)程序
sencha app watch
使應(yīng)用程序在瀏覽器中一直保持運(yùn)行狀態(tài)的最簡(jiǎn)單的方式是運(yùn)行 app watch:

sencha app watch

這個(gè)命令相當(dāng)于執(zhí)行了一個(gè)development build命令,同時(shí)也啟動(dòng)了Sencha Cmd內(nèi)部的web server服務(wù)器
app watch會(huì)開始等待并監(jiān)視文件的變化,一旦文件發(fā)生更改,Sencha cmd會(huì)重新自動(dòng)進(jìn)行develpment build之后繼續(xù)等待.
可以通過http://localhost:1841/ 對(duì)應(yīng)用程序進(jìn)行訪問.
可以通過Ctrl+c停止運(yùn)行app watch.
通過構(gòu)建開發(fā)版應(yīng)用
如果手動(dòng)的更新bootstrap引導(dǎo)文件,有以下兩個(gè)命令可以使用

sencha app build development
sencha app refresh

app refresh命令只會(huì)更新bootstrap引導(dǎo)文件的js代碼部分.當(dāng)僅僅是修改了js相關(guān)文件后使用這個(gè)命令
app build development內(nèi)部實(shí)際上同樣執(zhí)行了app refresh領(lǐng)命,但是同時(shí)會(huì)對(duì)css文件進(jìn)行重新編譯.
app.json文件包含很多配置項(xiàng)以及相應(yīng)的說明,另外workspace.json包含了工作空間以及一些額外的配置.
classpath配置項(xiàng)配置了項(xiàng)目的源代碼文件路徑,sencha app build命令會(huì)通過此配置查找項(xiàng)目的源文件并進(jìn)行編譯.

"classpath": [ 
  "app", 
  "${toolkit.name}/src"
]

創(chuàng)建工作空間

sencha generate workspace /path/to/workspace

工作空間的目錄結(jié)構(gòu)如下:

workspace.json            # 工作空間配置
sencha/                  
    workspace/             
        sencha.cfg        #  Sencha Cmd配置文件 
        plugin.xml        #  Sencha Cmd插件

在工作空間中創(chuàng)建Extjs應(yīng)用程序

mkdir apps           //新建apps文件夾用來存放多個(gè)Extjs應(yīng)用
cd apps              //進(jìn)入apps目錄
//創(chuàng)建第一個(gè)應(yīng)用時(shí)使用此命令,Cmd會(huì)自動(dòng)根據(jù)命令中指定的框架路徑將
//ext框架拷貝到workspace根目錄.之后創(chuàng)建使用下面的命令
sencha -sdk /path/to/ext6 generate app MyApp /path/to/my-app 

sencha generate app --ext NewApp newapp 

上面--ext 指的就是配置文件中指定的extjs框架路徑.

本地化設(shè)置

在app.json文件中的requires中添加"locale",告訴cmd應(yīng)用需要locale設(shè)置,另外指定哪一種本地化文件. 例如"zh_CN".

"requires": [
     "locale"
],
"locale": "zh_CN",
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,711評(píng)論 19 139
  • linux資料總章2.1 1.0寫的不好抱歉 但是2.0已經(jīng)改了很多 但是錯(cuò)誤還是無法避免 以后資料會(huì)慢慢更新 大...
    數(shù)據(jù)革命閱讀 13,364評(píng)論 2 33
  • Spring Boot 參考指南 介紹 轉(zhuǎn)載自:https://www.gitbook.com/book/qbgb...
    毛宇鵬閱讀 47,290評(píng)論 6 342
  • Ubuntu的發(fā)音 Ubuntu,源于非洲祖魯人和科薩人的語言,發(fā)作 oo-boon-too 的音。了解發(fā)音是有意...
    螢火蟲de夢(mèng)閱讀 100,842評(píng)論 9 468
  • 前言 本文主要簡(jiǎn)單的介紹如何使用Sencha Cmd創(chuàng)建Ext項(xiàng)目,適用于初學(xué)者,詳細(xì)內(nèi)容可以進(jìn)入Sencha C...
    yimi珊閱讀 1,078評(píng)論 0 1

友情鏈接更多精彩內(nèi)容