前言
- ionic4在2019年初發(fā)布盹兢,距離現(xiàn)在已經(jīng)有一段時(shí)間了。由于各種原因拱礁,我最近才開始入門ionic4琢锋,目前我在github上已經(jīng)建了一個(gè)ionic4開發(fā)模版項(xiàng)目辕漂,正在不斷完善
- ionic4明顯比ionic3快了,angular7也比angular4更易用吴超,打算就用i4開發(fā)app了
關(guān)于ionic4
- ionic3對(duì)angular封裝的比較多钉嘹,以至于會(huì)用i3開發(fā)app,卻不會(huì)用angular開發(fā)web項(xiàng)目鲸阻;ionic4把重心放在ui工作上跋涣,它現(xiàn)在可以稱為ui框架,js框架你可以選擇angular/vue/react鸟悴,如果你繼續(xù)使用angular做js框架陈辱,i4項(xiàng)目完全就是一個(gè)angular項(xiàng)目,如果你也用angular做web項(xiàng)目细诸,那幾乎是零學(xué)習(xí)成本就上手了性置,i4項(xiàng)目結(jié)構(gòu)和angular web項(xiàng)目是一樣的
ionic4相比ionic3變化大嗎?
- 可以說大也可以說不大揍堰,上面說了ionic4可以用vue,react做js框架嗅义,如下圖屏歹,每個(gè)ui組件提供了3種使用方式,如果你繼續(xù)使用angular作為js框架之碗,那變化不大蝙眶,會(huì)i3上手i4很快,ionic對(duì)vue和react的支持目前(2019年3月20日)還沒有發(fā)布穩(wěn)定版褪那,不過我這里繼續(xù)選用angular做為js框架幽纷,web端使用NG-ZORRO做ui框架
ionic4+angular開發(fā)app項(xiàng)目項(xiàng)目ionic3有哪些變化?
- 項(xiàng)目結(jié)構(gòu)和angular項(xiàng)目保持一致博敬,所以也可以使用angular cli
- 路由與導(dǎo)航變化友浸,i3封裝的路由相比angular默認(rèn)的路由好用,現(xiàn)在統(tǒng)一為angular路由偏窝,angular的路由配置剛開始上手確實(shí)挺復(fù)雜的收恢,各位可以看這篇ionic4/angular路由配置與導(dǎo)航傳參
- 為了更好的性能,i4許多ui組件用異步方式創(chuàng)建祭往。如
Alert伦意、Modal、ActionSheet硼补、Popover
等驮肉,使用時(shí)要注意:組件還沒打開又調(diào)用了關(guān)閉方法;打開第二個(gè)alert可能第一個(gè)alert還沒打開已骇;處理android返回按鈕事件關(guān)閉alert离钝,等都要考慮異步問題 - 還有的變化可能就是angular4到angular7的變化了票编。比如Service類不用在
app.module.ts
文件中的providers
中聲明了,cordova插件還是要的奈辰,否則使用--prod
參數(shù)打包失敗 - 關(guān)于插件調(diào)用及使用方式基本沒變化栏妖,只不過更新了插件依賴包文件,如下圖
/ngx
是新的依賴包路徑
開發(fā)建議
- 認(rèn)真通讀ionic官網(wǎng)文檔和angular官方文檔奖恰,可能很多你頭疼的問題就是少了一個(gè)配置吊趾,原因是你沒讀官方文檔,不知道有這項(xiàng)配置
- 關(guān)注官網(wǎng)github的更新瑟啃,很多問題你解決不了论泛,可能升級(jí)一下版本就ok了
- 我在這里更新了學(xué)習(xí)指引鏈接,建議各位保存書簽方便查看http://www.reibang.com/p/7d1577539183
環(huán)境配置
- 使用ionic4開發(fā)app蛹屿,建議nodejs屁奏、ionic cli、cordova错负、項(xiàng)目中的依賴等環(huán)境均用最新版坟瓢;
npm install -g ionic cordova @angular/cli
- 如果需要維護(hù)舊版本項(xiàng)目建議使用nvm管理多個(gè)環(huán)境配置
其他
- ionic官網(wǎng)還給出了PWA和Electron桌面應(yīng)用文檔,雖然以前也可以做PWA和桌面應(yīng)用犹撒,不過現(xiàn)在感覺更穩(wěn)了