我的uni-app刨坑——概念學習

一惠拭、uni-app的由來

提到小程序,大多數(shù)人第一反應該都是聯(lián)想到微信江滨。其實 Dcloud 才是小程序行業(yè)的開創(chuàng)者铛纬。
DCloud,數(shù)字天堂(北京)網(wǎng)絡技術有限公司牙寞,是W3C 成員及 HTML5 中國產業(yè)聯(lián)盟發(fā)起單位饺鹃。

2012年莫秆,DCloud 開始研發(fā)小程序技術间雀,優(yōu)化 webview 的功能和性能。
2015年镊屎,DCloud 正式商用了自己的小程序惹挟,產品名為“流應用”,并且將技術標準貢獻給工信部旗下的HTML5中國產業(yè)聯(lián)盟缝驳,并推進各家流量巨頭接入該標準连锯,開展小程序業(yè)務。360手機助手率先接入用狱,緊隨其后的包括了大眾點評运怖、攜程、京東夏伊、有道詞典等摇展。
2015年9月,DCloud 推進微信團隊開展小程序溺忧,并在2016年出上線小程序業(yè)務咏连,但是微信并沒有接入聯(lián)盟的標準盯孙,而是制定了自己的一套標準。
隨著 DCloud 持續(xù)普及小程序理念祟滴,越來越多的大流量巨頭公司紛紛開始加入其行列振惰,但是接入聯(lián)盟標準的僅有部分公司,大部分會因為商業(yè)利益而制定了私有標準垄懂,從而造成標準無法統(tǒng)一骑晶,十分混亂。
面對這種混亂局面草慧,DCloud 決定開發(fā)一個免費開源的框架透罢,通過這個框架為開發(fā)者抹平各大平臺的差異,這個框架就是 uni-app冠蒋,這就是它的由來羽圃。

二、html抖剿、vue朽寞、小程序的區(qū)別

此處引用一下官網(wǎng)推薦的《白話uni-app》,特別適合像我這樣的新手閱讀斩郎。
文章中講述了許多編碼方式的變化以及 uni-app 中對比于 html 標簽所改變及保留的一些標簽內容脑融,除此之外還有寫出新增的針對于手機端常用的新組建,內容干貨巨多缩宜,寫的十分詳細易懂肘迎。

三、框架簡介

1锻煌、目錄結構

┌─cloudfunctions        云函數(shù)目錄(阿里云為aliyun妓布,騰訊云為tcb,詳見uniCloud)
│─components            符合vue組件規(guī)范的uni-app組件目錄
│  └─comp-a.vue         可復用的a組件
├─hybrid                存放本地網(wǎng)頁的目錄宋梧,詳見
├─platforms             存放各平臺專用頁面的目錄匣沼,詳見
├─pages                 業(yè)務頁面文件存放的目錄
│  ├─index
│  │  └─index.vue       index頁面
│  └─list
│     └─list.vue        list頁面
├─static                存放應用引用靜態(tài)資源(如圖片、視頻等)的目錄捂龄,注意:靜態(tài)資源只能存放于此
├─wxcomponents          存放小程序組件的目錄释涛,詳見
├─main.js               Vue初始化入口文件
├─App.vue               應用配置,用來配置App全局樣式以及監(jiān)聽 應用生命周期
├─manifest.json         配置應用名稱倦沧、appid唇撬、logo、版本等打包信息展融,詳見
└─pages.json            配置頁面路由窖认、導航條、選項卡等頁面類信息,詳見

Tips

  • static目錄為靜態(tài)資源存放文件夾耀态,該目錄下的js文件不會被編譯轮傍,若文件中存放有二手代碼,不會經>過轉換直接運行首装,在手機設備上會報錯
  • css创夜、less/sass等資源也不要放在目錄下,這類公共資源建議放在common目錄下

2仙逻、資源路徑說明

  • 模板內引入靜態(tài)資源
<!-- template內引入靜態(tài)資源驰吓,如image、video等標簽的src屬性時系奉,可以使用相對路徑或者絕對路徑 -->
<!-- 絕對路徑檬贰,/static指根目錄下的static目錄,在cli項目中/static指src目錄下的static目錄 -->
<image class="logo" src="/static/logo.png"></image>
<image class="logo" src="@/static/logo.png"></image>
<!-- 相對路徑 -->
<image class="logo" src="../../static/logo.png"></image>
  • js文件引入
// js文件或script標簽內(包括renderjs等)引入js文件時缺亮,可以使用相對路徑和絕對路徑
// 絕對路徑翁涤,@指向項目根目錄,在cli項目中@指向src目錄
import add from '@/common/add.js'
// 相對路徑萌踱,js文件不支持使用/開頭的方式引入
import add from '../../common/add.js'   
  • css引入靜態(tài)資源
/* 絕對路徑 */
background-image: url(/static/logo.png);
background-image: url(@/static/logo.png);
/* 相對路徑 */
background-image: url(../../static/logo.png);

3葵礼、應用的生命周期

  • onLaunch:當uni-app初始化時完成,全局只完成一次并鸵。
  • onShow:當uni-app啟動鸳粉,或從后臺進入前臺顯示,即從隱藏到顯示
  • onHide:當uni-app從前臺進入到后臺园担,即從顯示到隱藏
  • onError:當uni-app報錯時觸發(fā)
  • onUniNViewMessage:對nvue頁面發(fā)送的數(shù)據(jù)進行監(jiān)聽
  • onUnhandledRejection:對未處理的 Promise 拒絕事件監(jiān)聽函數(shù)
  • onPageNotFound:頁面不存在監(jiān)聽函數(shù)
  • onThemeChange:監(jiān)聽系統(tǒng)主題變化

4届谈、頁面的生命周期

函數(shù)名 說明 平臺差異說明 最低版本
onLoad 監(jiān)聽頁面加載,其參數(shù)為上個頁面?zhèn)鬟f的數(shù)據(jù)弯汰,參數(shù)類型為Object(用于頁面?zhèn)鲄ⅲ┘枭剑瑓⒖?a target="_blank">示例
onShow 監(jiān)聽頁面顯示。頁面每次出現(xiàn)在屏幕上都觸發(fā)蝙泼,包括從下級頁面點返回露出當前頁面
onReady 監(jiān)聽頁面初次渲染完成程剥。注意如果渲染速度快劝枣,會在頁面進入動畫完成前觸發(fā)
onHide 監(jiān)聽頁面隱藏
onUnload 監(jiān)聽頁面卸載
onResize 監(jiān)聽窗口尺寸變化 App汤踏、微信小程序
onPullDownRefresh 監(jiān)聽用戶下拉動作,一般用于下拉刷新舔腾,參考示例
onReachBottom 頁面上拉觸底事件的處理函數(shù)
onTabItemTap 點擊 tab 時觸發(fā)溪胶,參數(shù)為Object,具體見下方注意事項 微信小程序稳诚、百度小程序哗脖、H5、App(自定義組件模式)
onShareAppMessage 用戶點擊右上角分享 微信小程序、百度小程序才避、字節(jié)跳動小程序橱夭、支付寶小程序
onPageScroll 監(jiān)聽頁面滾動,參數(shù)為Object
onNavigationBarButtonTap 監(jiān)聽原生標題欄按鈕點擊事件桑逝,參數(shù)為Object 5+ App棘劣、H5
onBackPress 監(jiān)聽頁面返回,返回 event = {from:backbutton楞遏、 navigateBack} 茬暇,backbutton 表示來源是左上角返回按鈕或 android 返回鍵;navigateBack表示來源是 uni.navigateBack 寡喝;詳細說明及使用:onBackPress 詳解 App糙俗、H5
onNavigationBarSearchInputChanged 監(jiān)聽原生標題欄搜索輸入框輸入內容變化事件 App、H5 1.6.0
onNavigationBarSearchInputConfirmed 監(jiān)聽原生標題欄搜索輸入框搜索事件预鬓,用戶點擊軟鍵盤上的“搜索”按鈕時觸發(fā)巧骚。 App、H5 1.6.0
onNavigationBarSearchInputClicked 監(jiān)聽原生標題欄搜索輸入框點擊事件 App格二、H5 1.6.0
onShareTimeline 監(jiān)聽用戶點擊右上角轉發(fā)到朋友圈 微信小程序 2.8.1+
onAddToFavorites 監(jiān)聽用戶點擊右上角收藏 微信小程序 2.8.1+

5网缝、頁面棧

框架以棧的形式管理當前所有頁面, 當發(fā)生路由切換的時候蟋定,頁面棧的表現(xiàn)如下:

路由方式 頁面棧表現(xiàn) 觸發(fā)時機
初始化 新頁面入棧 uni-app 打開的第一個頁面
打開新頁面 新頁面入棧 調用 API uni.navigateTo 粉臊、使用組件<navigator open-type="navigate"/>
頁面重定向 當前頁面出棧,新頁面入棧 調用 APIuni.redirectTo 驶兜、使用組件<navigator open-type="redirectTo"/>
頁面返回 頁面不斷出棧扼仲,直到目標返回頁 調用 APIuni.navigateBack、使用組件<navigator open-type="navigateBack"/>抄淑、用戶按左上角返回按鈕屠凶、安卓用戶點擊物理back按鍵
Tab 切換 頁面全部出棧,只留下新的 Tab 頁面 調用 APIuni.switchTab 肆资、使用組件<navigator open-type="switchTab"/>矗愧、用戶切換 Tab
重加載 頁面全部出棧,只留下新的頁面 調用 APIuni.reLaunch 郑原、使用組件<navigator open-type="reLaunch"/>

6唉韭、官方文檔

page.json配置 的官方文檔

uni-app官方組件文檔

內容很詳細,可作為工具文檔使用


2020.10.30

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末犯犁,一起剝皮案震驚了整個濱河市属愤,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌酸役,老刑警劉巖住诸,帶你破解...
    沈念sama閱讀 222,183評論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件驾胆,死亡現(xiàn)場離奇詭異,居然都是意外死亡贱呐,警方通過查閱死者的電腦和手機丧诺,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,850評論 3 399
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來奄薇,“玉大人锅必,你說我怎么就攤上這事√柩蓿” “怎么了搞隐?”我有些...
    開封第一講書人閱讀 168,766評論 0 361
  • 文/不壞的土叔 我叫張陵,是天一觀的道長远搪。 經常有香客問我劣纲,道長,這世上最難降的妖魔是什么谁鳍? 我笑而不...
    開封第一講書人閱讀 59,854評論 1 299
  • 正文 為了忘掉前任癞季,我火速辦了婚禮,結果婚禮上倘潜,老公的妹妹穿的比我還像新娘绷柒。我一直安慰自己,他們只是感情好涮因,可當我...
    茶點故事閱讀 68,871評論 6 398
  • 文/花漫 我一把揭開白布废睦。 她就那樣靜靜地躺著,像睡著了一般养泡。 火紅的嫁衣襯著肌膚如雪嗜湃。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,457評論 1 311
  • 那天澜掩,我揣著相機與錄音购披,去河邊找鬼。 笑死肩榕,一個胖子當著我的面吹牛刚陡,可吹牛的內容都是我干的。 我是一名探鬼主播株汉,決...
    沈念sama閱讀 40,999評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼筐乳,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了郎逃?” 一聲冷哼從身側響起哥童,我...
    開封第一講書人閱讀 39,914評論 0 277
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎褒翰,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經...
    沈念sama閱讀 46,465評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡优训,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 38,543評論 3 342
  • 正文 我和宋清朗相戀三年朵你,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片揣非。...
    茶點故事閱讀 40,675評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡抡医,死狀恐怖,靈堂內的尸體忽然破棺而出早敬,到底是詐尸還是另有隱情忌傻,我是刑警寧澤,帶...
    沈念sama閱讀 36,354評論 5 351
  • 正文 年R本政府宣布搞监,位于F島的核電站水孩,受9級特大地震影響,放射性物質發(fā)生泄漏琐驴。R本人自食惡果不足惜俘种,卻給世界環(huán)境...
    茶點故事閱讀 42,029評論 3 335
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望绝淡。 院中可真熱鬧宙刘,春花似錦、人聲如沸牢酵。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,514評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽馍乙。三九已至玉罐,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間潘拨,已是汗流浹背吊输。 一陣腳步聲響...
    開封第一講書人閱讀 33,616評論 1 274
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留铁追,地道東北人季蚂。 一個月前我還...
    沈念sama閱讀 49,091評論 3 378
  • 正文 我出身青樓,卻偏偏與公主長得像琅束,于是被迫代替她去往敵國和親扭屁。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,685評論 2 360