原文:How to Style Apps with Fashion in Ext JS 6
網(wǎng)站設(shè)計制作過程拒絕使用模板建站;使用PHP+MYSQL原生開發(fā)可交付網(wǎng)站源代碼;符合網(wǎng)站優(yōu)化排名的后臺管理系統(tǒng);成都網(wǎng)站制作、成都網(wǎng)站建設(shè)收費合理;免費進行網(wǎng)站備案等企業(yè)網(wǎng)站建設(shè)一條龍服務(wù).我們是一家持續(xù)穩(wěn)定運營了十余年的創(chuàng)新互聯(lián)建站網(wǎng)站建設(shè)公司。在Ext JS 6,一個大的改變就是框架合并,使用一個單一的代碼庫,就可以為每一種設(shè)備開發(fā)各具有良好體驗的最好應(yīng)用程序。它還帶來了一種美化應(yīng)用程序的新方式。
在本文,重點是Sencha Fashion。這是什么?該如何使用它呢?在未來陸續(xù)的教程中,將為你展示如何去創(chuàng)建一個極好的暗黑主題。
Ext JS應(yīng)用程序的主題使用的是SASS,它是一種動態(tài)編寫CSS代碼的方法。例如,可以在樣式表中使用變量和運算。瀏覽器并不了解SASS,它只知道 CSS,隱藏,這些SASS主題需要被編譯為瀏覽器能理解的,生產(chǎn)用的CSS代碼。在Ext JS應(yīng)用程序中可以通過在Sencha Cmd運行以下命令來編譯主題:
sencha app build [development]
或
sencha app watch [toolkit]
兩者的區(qū)別在于watch會通過輪詢來了解更新,并理解進行編譯,而build編譯只能手動執(zhí)行一次。
在舊版本的Ext JS或Sencha Touch,SASS樣式是在Ruby中編譯的。在Windows,需要使用管理員權(quán)限來安裝Ruby。一旦安裝完成,就可以開始編譯主題了。不過,在有大量代碼庫和高級主題的時候,就要花費大量的編譯時間。
為了編譯高級主題,有時候需要花費一分鐘。然后,你不得不刷新瀏覽器窗口來測試主題以確保已正確設(shè)置SASS變量。之后還要一次次的重復(fù)此過程。要知道,這個過程是相當(dāng)耗時間的。這也是為什么對Fashion感到高興的原因。
Sencha Fashion是使用javascript來編譯主題的,可以說這是超級的快。當(dāng)在左邊的顯示器修改一行代碼后,就可以右邊的顯示器看到變化了,就是這么快。不再需要等等編譯(在服務(wù)器開始),也不再需要刷新瀏覽器窗口。
由于Fashion使用的是javascript,因而有更多優(yōu)點。例如,可以在Fashion之上進行擴展并創(chuàng)建自己的樣式功能(類似SASS功能),還能調(diào)試樣式表代碼。
不過,大的得益還是可以在開發(fā)機器上設(shè)計主題。要實現(xiàn)這個,只需要在命令行運行sencha app watch并在URL中添加以下參數(shù):
?platformTags=fashion:true
下面來嘗試下使用Fashion來編譯一個主題。首先,下載Ext JS 6。這已經(jīng)包含了SDK。還需要下載Sencha Cmd 6。
安裝好命令行工具后,在機器上解壓Ext JS 6框架包(zip)。打開命令行提示符并通過命令行導(dǎo)航到框架文件夾。在Ext6文件夾,輸入以下命令來創(chuàng)建第一個sencha通用應(yīng)用程序:
ext> sencha generate app MyApp ../指定的項目路徑
在IDE或編輯器中打開新的應(yīng)用程序項目。要注意classic和modern這兩個新的文件夾。這是用來區(qū)分工具包的文件夾。共享代碼要放在 app文件夾內(nèi)。classic工具包文件夾包含了舊版本(桌面)視圖,而modern工具包文件夾則包含了現(xiàn)代touch的視圖。對于兩個工具包來 說,DOM是不同的,因而樣式也會有些許不同。這也是為什么工具包文件夾會有一個src子文件夾用來放置javascript代碼,會有一個sass文件 夾來放置指定的樣式的原因。
打開app.json文件并滾動到“builds”配置:
"builds": { "classic": { "toolkit": "classic", "theme": "theme-triton" }, "modern": { "toolkit": "modern", "theme": "theme-neptune" } },1234567891011
要注意這里的每一個build配置,他們都有自己的工具包和主題。對于classic配置,將使用新的海衛(wèi)一(Triton)主題,而modern工具包將使用海王星(Neptune)主題(原名是Sencha Touch默認(rèn)主題)。
現(xiàn)在不需要對這個進行修改。下面來創(chuàng)建兩個新文件:
classic/sass/var/Application.scss modern/sass/var/Application.scss
現(xiàn)在,打開Sencha本地Web服務(wù)器,并讓Sencha輪詢樣式表的改變。
在通用應(yīng)用程序的文件夾中,運行以下命令:
項目文件夾> sencha app watch classic
如果Cmd安裝正確,該命令會正確運行。現(xiàn)在內(nèi)置的sencha服務(wù)器將等待更新。應(yīng)用程序默認(rèn)可通過http://localhost:1841來訪問。
假如運行的端口是1841,則在瀏覽器輸入以下地址來打開應(yīng)用程序:
http://localhost:1841/?platformTags=fashion:true
等待應(yīng)用程序加載完成。主題第一次編譯,需要一點時間。一旦看到應(yīng)用程序,在編輯器打開以下文件:
classic/sass/var/Application.scss
如果有兩個顯示器,將瀏覽器窗口拖到其他顯示器,讓編輯器在一個顯示器,而瀏覽器在另一個顯示器。
接下來將樣式表的總體樣式修改為黑色。編寫以下全局變量:
$base-color: #000;
等一會,就可以在瀏覽器中看到更改后的樣式了。不僅標(biāo)題已更改為黑色,其他擴展自全局基本顏色的樣式都已經(jīng)變成黑色了。,例如,雙擊網(wǎng)格,會看到告警窗口也已經(jīng)改變了。
修改$base-color的值,試一下其他顏色效果。例如20%變亮的紅色:
$base-color: lighten(red, 20%);
當(dāng)然,現(xiàn)在也可以使用這種方式來修改modern工具包的主題。運行以下命令:
sencha app watch modern
在瀏覽器打開以下url將打開modern工具包:
http://localhost:1841/?toolkit=modern&platformTags=fashion:true
修改以下文件:
modern/sass/var/Application.scss
這相當(dāng)快!這就是Fashion,編譯是在Javascript下運行的。所有的效果都是在這個引擎下產(chǎn)生的。Sencha Cmd在后臺運行的是PhantomJS。它是一個沒有顯示的瀏覽器,可以在命令行中運行。它可以運行應(yīng)用程序,編譯主題,以及將它推送給一個大的 javascript函數(shù)。每一次修改,都會讓javascript去修改DOM中的樣式。
敬請期待未來的主題教程。請把你們對于Fashion的想法告訴我們。這個可以在Ext JS 6論壇中提交你的問題。
作者: Lee Boonstra
Lee is a sales engineer at Sencha in Europe. She’s located in Amsterdam and has experience in both front-end and back-end development. Lee spends her spare time developing web and mobile apps. She also wrote a book for O’Reilly: Hands-on Sencha Touch 2.
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。
網(wǎng)頁名稱:【翻譯】如何在ExtJS6中使用Fashion美化應(yīng)用程序-創(chuàng)新互聯(lián)
網(wǎng)頁路徑:http://jinyejixie.com/article32/djsgpc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供商城網(wǎng)站、域名注冊、網(wǎng)站內(nèi)鏈、網(wǎng)站排名、軟件開發(fā)、ChatGPT
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)