ionic 3.0+ 項目搭建運行環(huán)境的教程
本文介紹了基于ionic3.4.0的項目搭建,分享給大家,具體如下:
在寫這篇文章的時候,ionic版本已經(jīng)更新到3.4.0。手頭上有一大堆ionic1.x版本的項目,也在這個基礎(chǔ)上開發(fā)了許多第三方的插件。實在是按捺不住迭代重構(gòu)的想法,終于開始了3.x的升級。文中的內(nèi)容都是在實踐的過程編寫的,注意請不要著急升級版本。
環(huán)境遷移
先看下升級后最新的環(huán)境輸出信息
全局升級了Cordova和Ionic的版本,分別是7.0.1和3.4.0。輸出ionic info 打印出最新的環(huán)境配置信息。這里要特殊指出的是Ionic CLI。Ionic和Ionic CLI是不一樣的東西。Ionic CLI是基于nodeJS的工具腳手架,開發(fā)Ionic應(yīng)用程序過程中使用的主要工具。更新了最新的Ionic版本后,該工具也隨之升級。當我們用Ionic CLI提供的命令去運行打包項目時,顯示如圖示。
為什么會出現(xiàn)如上圖所示的情況。在官博相關(guān)資料中有介紹,Ionic團隊為了提高其性能和用戶體驗,重寫了CLI。更新后的其中一個變化就是和Cordova CLI交互相關(guān)的所有命令,都需要將cordova作為命令的一部分。以前我們是執(zhí)行以下命令
ionic platform add android ionic run/build android
在v3 CLI命令則是
ionic cordova platform add android ionic cordova run/build android
第一次在項目中執(zhí)行該命令,會彈出如下提示,是因為Ionic CLI的Cordova功能已被移植到一個插件中,當檢測到?jīng)]有該插件時,會提示用戶安裝。
看下cli-plugin-cordova 安裝前后的命令對比
現(xiàn)在,執(zhí)行ionic cordova run/build android就可以進行調(diào)試打包了。再回到ionic 1.x項目的調(diào)試打包問題,不管新舊項目,第一次運行命令,也是會提示按照相應(yīng)的插件,和v3略有不同。
再說起cordova,其實以上命令也都是基于Cordova CLI,那么,如果用Cordova CLI提供的命令來打包,是不是也是可以執(zhí)行。這當然可以,只是新的工具提供了更多的命令,比如ionic generate(簡寫: ionic g),可以更加高效的構(gòu)建項目。拿官博提供的一個例子說下。
$ ionic g tabs ? What should the name be? myTab ? How many tabs? 4 ? Name of this tab: home ? Name of this tab: maps ? Name of this tab: contacts ? Name of this tab: more [OK] Generated a tabs named myTab!
再比如ionic g page myPage、ionic g provider MyData,都可以快速的為我們構(gòu)建模塊化、結(jié)構(gòu)化的目錄。工具的作用就是提高我們的開發(fā)效率,具體怎么使用,見仁見智了。如果習慣了依舊可以使用cordova,但為了往后面的版本靠攏,升級也無可厚非。
版本降級
說完環(huán)境遷移,說說版本回退的問題。在升級到3.4.0之前,因為有升級到2.x的經(jīng)歷,導(dǎo)致1.x項目也是無法正常運行打包,因此對版本進行了回退。而在升級到3.3的時候,折騰了半天也沒發(fā)現(xiàn)命令重構(gòu)成ionic cordova。所以把Ionic CLI降級回退到了2.x,這時候ionic start 都是1.x的版本,再通過ionic start xxx –v2的方法去下載ionic框架在github最新的demo,這時候下載的就是最新的3.x版本。2.x->3.x只是版本號的迭代,所以執(zhí)行–v2是會下載最新的demo源碼。
npm uninstall -g ionic npm cache clean npm install -g ionic@2 ionic start myProject blank
此時我的環(huán)境是這樣子的
可以看到Ionic CLI 的版本是2.x,而項目下載是最新3.x的源碼,同樣執(zhí)行基于Ionic CLI 2.x版本的命令,都是可以正常運行打包任何項目的。通過這種辦法,也是可以同時運行加載1.x到3.x的項目,至于使用哪種辦法,各取所需吧。
學(xué)習使用官方Demo
官方在1.x的時候提供了blank/sidemenu/tabs 三種demo模板,開發(fā)時可以根據(jù)不同的需求學(xué)習或使用對應(yīng)的模板。在3.x之后,新增了super和tutorial兩種模板。
tabs : a simple 3 tab layout
sidemenu: a layout with a swipable menu on the side
blank: a bare starter with a single page
super: starter project with over 14 ready to use page designs
tutorial: a guided starter project
ionic start MyIonicProject tutorial
下載模板命令不變,如果沒有指定模板,默認是tabs。在這里我推薦使用super模板,可以較快的掌握基礎(chǔ)語法和了解基礎(chǔ)的項目架構(gòu)。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
JS簡單編號生成器實現(xiàn)方法(附demo源碼下載)
這篇文章主要介紹了JS簡單編號生成器實現(xiàn)方法,涉及JavaScript針對表單與字符串操作的相關(guān)技巧,并附帶demo源碼供讀者下載參考,需要的朋友可以參考下2016-04-04JavaScript 中的12種循環(huán)遍歷方法【總結(jié)】
本文給大家總結(jié)了12種JavaScript 中的1循環(huán)遍歷方法,每種方法通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下2018-05-05微信小程序中如何使用flyio封裝網(wǎng)絡(luò)請求
這篇文章主要介紹了微信小程序中如何使用flyio封裝網(wǎng)絡(luò)請求,F(xiàn)ly.js 通過在不同 JavaScript 運行時通過在底層切換不同的 Http Engine來實現(xiàn)多環(huán)境支持,但同時對用戶層提供統(tǒng)一、標準的Promise API,需要的朋友可以參考下2019-07-07Apply an AutoFormat to an Excel Spreadsheet
Apply an AutoFormat to an Excel Spreadsheet...2007-06-06JavaScript中object和Object的區(qū)別(詳解)
下面小編就為大家?guī)硪黄狫avaScript中object和Object的區(qū)別(詳解)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-02-02JavaScript數(shù)據(jù)結(jié)構(gòu)之雙向鏈表定義與使用方法示例
這篇文章主要介紹了JavaScript數(shù)據(jù)結(jié)構(gòu)之雙向鏈表定義與使用方法,簡單介紹了雙向鏈表的原理,并結(jié)合實例形式分析了雙向鏈表的定義與使用方法,需要的朋友可以參考下2017-10-10javascript實現(xiàn)圖片預(yù)加載和懶加載
這篇文章主要為大家詳細介紹了javascript實現(xiàn)圖片預(yù)加載和懶加載,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-03-03JS動態(tài)增加刪除UL節(jié)點LI及相關(guān)內(nèi)容示例
這篇文章主要介紹了JS如何動態(tài)增加刪除UL節(jié)點LI及相關(guān)內(nèi)容,需要的朋友可以參考下2014-05-05