




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第8章動(dòng)畫和網(wǎng)絡(luò)請(qǐng)求《鴻蒙HarmonyOS應(yīng)用開發(fā)基礎(chǔ)》學(xué)習(xí)目標(biāo)/Target掌握屬性動(dòng)畫的使用方法,能夠?qū)崿F(xiàn)屬性動(dòng)畫效果掌握?qǐng)D像幀動(dòng)畫的使用方法,能夠?qū)崿F(xiàn)圖像幀動(dòng)畫效果掌握轉(zhuǎn)場(chǎng)動(dòng)畫的使用方法,能夠?qū)崿F(xiàn)轉(zhuǎn)場(chǎng)動(dòng)畫效果掌握網(wǎng)絡(luò)權(quán)限的申請(qǐng)方法,能夠按需申請(qǐng)網(wǎng)絡(luò)權(quán)限學(xué)習(xí)目標(biāo)/Target掌握啟動(dòng)服務(wù)器的方法,能夠完成服務(wù)器的啟動(dòng)掌握使用NetworkKit發(fā)送網(wǎng)絡(luò)請(qǐng)求的方法,能夠使用NetworkKit發(fā)送網(wǎng)絡(luò)請(qǐng)求掌握使用RemoteCommunicationKit發(fā)送網(wǎng)絡(luò)請(qǐng)求的方法,能夠使用RemoteCommunicationKit發(fā)送網(wǎng)絡(luò)請(qǐng)求掌握使用axios發(fā)送網(wǎng)絡(luò)請(qǐng)求的方法,能夠使用axios發(fā)送網(wǎng)絡(luò)請(qǐng)求章節(jié)概述/Summary在鴻蒙應(yīng)用開發(fā)中,動(dòng)畫和網(wǎng)絡(luò)請(qǐng)求是兩個(gè)常見的功能。通過(guò)為鴻蒙應(yīng)用的UI添加流暢的動(dòng)畫,可以增強(qiáng)用戶對(duì)應(yīng)用的交互體驗(yàn)和滿意度,同時(shí)也能夠有效地引導(dǎo)用戶完成操作或理解應(yīng)用功能;通過(guò)為鴻蒙應(yīng)用添加網(wǎng)絡(luò)請(qǐng)求功能,可以使鴻蒙應(yīng)用能夠通過(guò)網(wǎng)絡(luò)獲取數(shù)據(jù),從而為用戶提供線上服務(wù)。本節(jié)將對(duì)動(dòng)畫和網(wǎng)絡(luò)請(qǐng)求進(jìn)行詳細(xì)講解。目錄/Contents8.18.2動(dòng)畫網(wǎng)絡(luò)請(qǐng)求8.3階段案例——外賣點(diǎn)餐頁(yè)面動(dòng)畫8.18.1.1屬性動(dòng)畫
先定一個(gè)小目標(biāo)!掌握屬性動(dòng)畫的使用方法,能夠?qū)崿F(xiàn)屬性動(dòng)畫效果8.1.1屬性動(dòng)畫屬性動(dòng)畫是一種通過(guò)在一定時(shí)間范圍內(nèi)改變組件的屬性值來(lái)實(shí)現(xiàn)動(dòng)畫效果的技術(shù)。在鴻蒙應(yīng)用開發(fā)中,可以通過(guò)設(shè)置屬性動(dòng)畫來(lái)實(shí)現(xiàn)動(dòng)畫效果,例如平移、縮放、旋轉(zhuǎn)等。8.1.1屬性動(dòng)畫設(shè)置屬性動(dòng)畫的方式有3種,分別是:使用animation屬性設(shè)置屬性動(dòng)畫。使用animateTo()方法設(shè)置屬性動(dòng)畫。使用animator對(duì)象設(shè)置屬性動(dòng)畫。8.1.1屬性動(dòng)畫1.使用animation屬性設(shè)置屬性動(dòng)畫使用animation屬性設(shè)置屬性動(dòng)畫時(shí),需要為組件添加該屬性,并設(shè)置相應(yīng)的動(dòng)畫參數(shù),如動(dòng)畫播放時(shí)長(zhǎng)、曲線和延遲時(shí)間等。animation屬性接收一個(gè)value參數(shù),該參數(shù)是一個(gè)AnimateParam實(shí)例,包含了用于設(shè)置動(dòng)畫效果的相關(guān)屬性。8.1.1屬性動(dòng)畫AnimateParam實(shí)例的常用屬性如下表所示。屬性說(shuō)明duration用于設(shè)置動(dòng)畫時(shí)長(zhǎng),默認(rèn)值為1000mstempo用于設(shè)置動(dòng)畫播放速度,默認(rèn)值為1。數(shù)值越大,動(dòng)畫播放速度越快;數(shù)值越小,播放速度越慢。若值為0,則表示無(wú)動(dòng)畫效果curve用于設(shè)置動(dòng)畫曲線delay用于設(shè)置動(dòng)畫延遲播放的時(shí)間(即延遲時(shí)間)。默認(rèn)值為0ms,表示不延遲播放iterations用于設(shè)置動(dòng)畫播放次數(shù),默認(rèn)值為1。若設(shè)置為-1表示無(wú)限次播放,若設(shè)置為0表示不播放playMode用于設(shè)置動(dòng)畫播放模式onFinish用于設(shè)置動(dòng)畫播放完成時(shí)執(zhí)行的回調(diào)函數(shù)8.1.1屬性動(dòng)畫curve屬性的常用取值如下。①Curve.EaseInOut:默認(rèn)值,表示動(dòng)畫以低速開始和結(jié)束。②Curve.Linear:表示動(dòng)畫從頭到尾的速度都是相同的。③Curve.Ease:表示動(dòng)畫以低速開始,然后加快,在結(jié)束前變慢。④Curve.EaseIn:表示動(dòng)畫以低速開始。⑤Curve.EaseOut:表示動(dòng)畫以低速結(jié)束。8.1.1屬性動(dòng)畫playMode屬性的常用取值如下。①PlayMode.Normal:默認(rèn)值,表示動(dòng)畫按正常播放。②PlayMode.Reverse:表示動(dòng)畫反向播放。③PlayMode.Alternate:表示動(dòng)畫在奇數(shù)次(1、3、5……)正向播放,在偶數(shù)次(2、4、6……)反向播放。④PlayMode.AlternateReverse:表示動(dòng)畫在奇數(shù)次反向播放,在偶數(shù)次正向播放。8.1.1屬性動(dòng)畫下面演示animation屬性的使用方法。在entry/src/main/ets/pages目錄下創(chuàng)建AnimationPage.ets文件,定義兩個(gè)按鈕,分別是“動(dòng)畫效果”和“動(dòng)畫開始”按鈕,實(shí)現(xiàn)當(dāng)點(diǎn)擊“動(dòng)畫開始”按鈕時(shí),改變“動(dòng)畫效果”按鈕的寬度和高度并觸發(fā)動(dòng)畫效果。8.1.1屬性動(dòng)畫2.使用animateTo()方法設(shè)置屬性動(dòng)畫animateTo()方法通過(guò)一個(gè)閉包函數(shù)設(shè)置組件的狀態(tài)變化,并為組件的狀態(tài)變化設(shè)置動(dòng)畫,其語(yǔ)法格式如下。①value參數(shù)是一個(gè)AnimateParam實(shí)例,用于設(shè)置動(dòng)畫效果的相關(guān)屬性。②event參數(shù)用于指定一個(gè)閉包函數(shù),閉包函數(shù)中設(shè)置的組件狀態(tài)變化會(huì)以動(dòng)畫的形式展現(xiàn)。animateTo(value,event)8.1.1屬性動(dòng)畫下面演示animateTo()方法的使用方法。在entry/src/main/ets/pages目錄下創(chuàng)建AnimateToPage.ets文件,定義一個(gè)“動(dòng)畫效果”文本和一個(gè)“放大/縮小”按鈕,實(shí)現(xiàn)當(dāng)點(diǎn)擊“放大/縮小”按鈕時(shí),為文本添加放大和縮小的動(dòng)畫效果。8.1.1屬性動(dòng)畫3.使用animator對(duì)象設(shè)置屬性動(dòng)畫animator對(duì)象(或稱為animator模塊)是ArkTS提供的動(dòng)畫API,它可以為組件提供動(dòng)畫效果,并可以對(duì)動(dòng)畫進(jìn)行控制。在使用animator對(duì)象前需要導(dǎo)入該對(duì)象,導(dǎo)入的方式有兩種,第1種導(dǎo)入方式如下。第2種導(dǎo)入方式如下。以上兩種導(dǎo)入方式的效果相同。importanimatorfrom'@ohos.animator';import{Animatorasanimator}from'@kit.ArkUI';8.1.1屬性動(dòng)畫animator對(duì)象提供了create()方法,用于創(chuàng)建AnimatorResult實(shí)例,該實(shí)例用于對(duì)動(dòng)畫進(jìn)行控制。8.1.1屬性動(dòng)畫create()方法的參數(shù)為AnimatorOptions實(shí)例,該實(shí)例用于設(shè)置動(dòng)畫參數(shù),其常用屬性如下表所示。屬性說(shuō)明duration動(dòng)畫播放的時(shí)長(zhǎng),默認(rèn)值為0,單位為毫秒easing動(dòng)畫插值曲線delay動(dòng)畫延時(shí)時(shí)間,默認(rèn)值為0,單位為毫秒。設(shè)置為0時(shí),表示不延時(shí)播放。設(shè)置為負(fù)數(shù)時(shí)表示動(dòng)畫提前播放的時(shí)長(zhǎng),如果提前播放的時(shí)長(zhǎng)大于動(dòng)畫總時(shí)長(zhǎng),動(dòng)畫直接過(guò)渡到終點(diǎn)fill動(dòng)畫播放前后的樣式direction動(dòng)畫播放模式iterations動(dòng)畫播放次數(shù),默認(rèn)值為1。設(shè)置為0時(shí)表示不播放,設(shè)置為-1時(shí)表示無(wú)限次播放。除-1之外的其他負(fù)數(shù)被視為無(wú)效取值,取值無(wú)效時(shí)動(dòng)畫默認(rèn)播放1次begin動(dòng)畫插值起點(diǎn),默認(rèn)值為0end動(dòng)畫插值終點(diǎn),默認(rèn)值為18.1.1屬性動(dòng)畫easing屬性的常用取值如下。①'linear':動(dòng)畫播放速度為線性。②'ease':默認(rèn)值,動(dòng)畫開始和結(jié)束時(shí)的播放速度較慢。③'ease-in':動(dòng)畫播放速度先慢后快。④'ease-out':動(dòng)畫播放速度先快后慢。⑤'ease-in-out':動(dòng)畫播放先加速后減速。8.1.1屬性動(dòng)畫fill屬性的常用取值如下。①'none':在動(dòng)畫播放之前和之后都不會(huì)應(yīng)用任何樣式到目標(biāo)上。②'forwards':默認(rèn)值,動(dòng)畫結(jié)束后目標(biāo)將保留最后一個(gè)關(guān)鍵幀的樣式。③'backwards':動(dòng)畫將在延遲播放期間應(yīng)用第一個(gè)關(guān)鍵幀的樣式。④'both':相當(dāng)于同時(shí)設(shè)置'forwards'和'backwards'。8.1.1屬性動(dòng)畫direction屬性的常用取值如下。①'normal':默認(rèn)值,動(dòng)畫正向循環(huán)播放。②'reverse':動(dòng)畫反向循環(huán)播放。③'alternate':動(dòng)畫交替循環(huán)播放,奇數(shù)次正向播放,偶數(shù)次反向播放。④'alternate-reverse':動(dòng)畫反向交替循環(huán)播放,奇數(shù)次反向播放,偶數(shù)次正向播放。8.1.1屬性動(dòng)畫AnimatorResult實(shí)例的常用方法如下表所示。方法說(shuō)明play()啟動(dòng)動(dòng)畫。動(dòng)畫會(huì)保留上一次的播放狀態(tài)pause()暫停動(dòng)畫cancel()取消動(dòng)畫reverse()以相反的順序播放動(dòng)畫finish()結(jié)束動(dòng)畫8.1.1屬性動(dòng)畫AnimatorResult實(shí)例的常用事件如下表所示。事件說(shuō)明onFrame接收到幀時(shí)觸發(fā)的事件onFinish動(dòng)畫播放完成時(shí)觸發(fā)的事件onCancel動(dòng)畫被取消時(shí)觸發(fā)的事件onRepeat動(dòng)畫重復(fù)播放時(shí)觸發(fā)的事件8.1.1屬性動(dòng)畫onFrame事件會(huì)在動(dòng)畫播放時(shí)連續(xù)觸發(fā),它可以接收一個(gè)progress參數(shù),該參數(shù)表示動(dòng)畫的當(dāng)前值,該值與動(dòng)畫參數(shù)中設(shè)置的begin屬性和end屬性有關(guān),會(huì)從begin屬性的值過(guò)渡到end屬性的值。例如,當(dāng)begin屬性的值為0,end屬性的值為360時(shí),progress參數(shù)的值會(huì)從0過(guò)渡到360。8.1.1屬性動(dòng)畫下面演示如何使用animator對(duì)象實(shí)現(xiàn)圖像旋轉(zhuǎn)動(dòng)畫效果。8.1.2圖像幀動(dòng)畫
先定一個(gè)小目標(biāo)!掌握?qǐng)D像幀動(dòng)畫的使用方法,能夠?qū)崿F(xiàn)圖像幀動(dòng)畫效果8.1.2圖像幀動(dòng)畫圖像幀動(dòng)畫是一種通過(guò)逐幀播放圖像來(lái)實(shí)現(xiàn)動(dòng)畫效果的技術(shù),常用于制作簡(jiǎn)單的動(dòng)畫效果,例如加載動(dòng)畫、購(gòu)物車動(dòng)畫等。使用ImageAnimator組件可以實(shí)現(xiàn)逐幀播放圖像,需要配置播放的圖像數(shù)組,每張圖像可以配置動(dòng)畫時(shí)長(zhǎng)。8.1.2圖像幀動(dòng)畫ImageAnimator組件的常用屬性如下表所示。屬性說(shuō)明images用于設(shè)置圖像幀信息集合,每一幀的幀信息包含圖像路徑、大小、位置和播放時(shí)長(zhǎng)信息,不支持動(dòng)態(tài)更新state用于設(shè)置動(dòng)畫播放狀態(tài)duration用于設(shè)置動(dòng)畫播放時(shí)長(zhǎng),默認(rèn)值為1000ms,duration為0時(shí)表示不播放圖像;值的改變只會(huì)在下一次循環(huán)開始時(shí)生效;當(dāng)images中任意一幀圖像設(shè)置了單獨(dú)的duration后,該屬性無(wú)效reverse用于設(shè)置動(dòng)畫的播放順序,默認(rèn)值為false表示從第1張圖像播放到最后1張圖像,當(dāng)設(shè)置為true時(shí)表示從最后1張圖像播放到第1張圖像fixedSize用于設(shè)置圖像大小是否固定為組件大小,默認(rèn)值為true,表示圖像大小與組件大小一致,此時(shí)設(shè)置圖像的width、height、top和left屬性是無(wú)效的;當(dāng)設(shè)置為false時(shí),表示每一張圖像的width、height、top和left屬性都要單獨(dú)設(shè)置fillMode用于設(shè)置動(dòng)畫開始前和結(jié)束后的樣式iterations用于設(shè)置動(dòng)畫播放次數(shù),默認(rèn)值為1,表示播放一次。若設(shè)置為-1表示無(wú)限次播放,若設(shè)置為0時(shí)表示不播放8.1.2圖像幀動(dòng)畫state屬性的常用取值如下。
①AnimationStatus.Initial:默認(rèn)值,表示動(dòng)畫處于初始狀態(tài)。②AnimationStatus.Running:表示動(dòng)畫處于播放狀態(tài)。③AnimationStatus.Paused:表示動(dòng)畫處于暫停狀態(tài)。④AnimationStatus.Stopped:表示動(dòng)畫處于停止?fàn)顟B(tài)。8.1.2圖像幀動(dòng)畫fillMode屬性的常用取值如下。①FillMode.Forwards:默認(rèn)值,表示保留動(dòng)畫執(zhí)行期間最后一個(gè)關(guān)鍵幀的樣式。②FillMode.None:表示動(dòng)畫未執(zhí)行時(shí)不改變樣式,動(dòng)畫播放完成后恢復(fù)初始樣式。③FillMode.Backwards:表示動(dòng)畫將立即應(yīng)用第一個(gè)關(guān)鍵幀中的樣式,并在延遲期間保持該樣式。④FillMode.Both:表示動(dòng)畫將同時(shí)遵循Forwards和Backwards規(guī)則,即在動(dòng)畫開始時(shí)應(yīng)用第一個(gè)關(guān)鍵幀的樣式,在動(dòng)畫結(jié)束時(shí)保持最后一個(gè)關(guān)鍵幀的樣式。8.1.2圖像幀動(dòng)畫下面演示如何使用ImageAnimator組件實(shí)現(xiàn)購(gòu)物車動(dòng)畫效果。8.1.3轉(zhuǎn)場(chǎng)動(dòng)畫
先定一個(gè)小目標(biāo)!掌握轉(zhuǎn)場(chǎng)動(dòng)畫的使用方法,能夠?qū)崿F(xiàn)轉(zhuǎn)場(chǎng)動(dòng)畫效果8.1.3轉(zhuǎn)場(chǎng)動(dòng)畫轉(zhuǎn)場(chǎng)動(dòng)畫是一種具有平滑過(guò)渡效果的動(dòng)畫,通常用于在畫面切換時(shí)使切換過(guò)程流暢自然,以增強(qiáng)用戶體驗(yàn)。常用的轉(zhuǎn)場(chǎng)動(dòng)畫包括:模態(tài)轉(zhuǎn)場(chǎng)動(dòng)畫出現(xiàn)/消失轉(zhuǎn)場(chǎng)動(dòng)畫、共享元素轉(zhuǎn)場(chǎng)動(dòng)畫8.1.3轉(zhuǎn)場(chǎng)動(dòng)畫1.模態(tài)轉(zhuǎn)場(chǎng)動(dòng)畫模態(tài)轉(zhuǎn)場(chǎng)動(dòng)畫是一種將新界面覆蓋在舊界面之上,而舊界面不消失的轉(zhuǎn)場(chǎng)方式。在ArkUI的通用屬性中,能夠?qū)崿F(xiàn)彈出新界面并具有模態(tài)轉(zhuǎn)場(chǎng)動(dòng)畫的常用屬性有:bindContentCover屬性bindSheet屬性bindMenu屬性bindContextMenu屬性bindPopup屬性8.1.3轉(zhuǎn)場(chǎng)動(dòng)畫(1)bindContentCover屬性bindContentCover屬性用于將全屏模態(tài)界面綁定到組件上,可以控制全屏模態(tài)界面的顯示和隱藏,其語(yǔ)法格式如下。參數(shù)isShow用于指定是否顯示全屏模態(tài)界面。參數(shù)builder用于配置全屏模態(tài)界面的內(nèi)容。參數(shù)options用于配置全屏模態(tài)界面的可選屬性,其中用于設(shè)置轉(zhuǎn)場(chǎng)時(shí)的過(guò)渡動(dòng)畫效果的是modalTransition屬性,它的可選值如下。①M(fèi)odalTransition.NONE:無(wú)動(dòng)畫過(guò)渡。②ModalTransition.DEFAULT:上下切換過(guò)渡。③ModalTransition.ALPHA:透明漸變過(guò)渡。bindContentCover(isShow,builder,options)8.1.3轉(zhuǎn)場(chǎng)動(dòng)畫(2)bindSheet屬性bindSheet屬性用于將半屏模態(tài)界面綁定到組件上,可以控制半屏模態(tài)界面的顯示和隱藏,其語(yǔ)法格式如下。參數(shù)isShow用于指定是否顯示半屏模態(tài)界面。參數(shù)builder用于配置半屏模態(tài)界面的內(nèi)容。參數(shù)options用于配置半屏模態(tài)界面的可選屬性,其中包括height(半屏模態(tài)高度)、showClose(是否顯示關(guān)閉圖標(biāo))、dragBar(是否顯示控制條)、title(半屏模態(tài)面板的標(biāo)題)等屬性。bindSheet(isShow,builder,options)8.1.3轉(zhuǎn)場(chǎng)動(dòng)畫(3)bindMenu屬性bindMenu屬性用于為組件綁定菜單,可以控制菜單的顯示和隱藏,其語(yǔ)法格式如下。
參數(shù)isShow用于指定是否顯示菜單,目前不支持雙向數(shù)據(jù)綁定。參數(shù)content用于指定配置菜單項(xiàng)圖標(biāo)和文本的數(shù)組,或者自定義組件。參數(shù)options用于配置彈出菜單的參數(shù),包括title(菜單標(biāo)題)、showInSubWindow(是否在子窗口中顯示菜單)等屬性。bindMenu(isShow,content,options)8.1.3轉(zhuǎn)場(chǎng)動(dòng)畫(4)bindContextMenu屬性bindContextMenu屬性用于為組件綁定上下文菜單。它和bindMenu屬性的區(qū)別是,bindContextMenu屬性綁定的菜單一般是通過(guò)長(zhǎng)按屏幕操作或右擊操作觸發(fā)的,而bindMenu屬性綁定的菜單一般是通過(guò)點(diǎn)擊屏幕操作或單擊操作觸發(fā)的。
bindContextMenu屬性的語(yǔ)法格式如下。參數(shù)isShown用于指定是否顯示上下文菜單,目前不支持雙向數(shù)據(jù)綁定。參數(shù)content用于指定配置菜單項(xiàng)圖標(biāo)和文本的數(shù)組,或者自定義組件。參數(shù)options用于配置彈出菜單的參數(shù),包括placement(菜單顯示的位置)、arrowOffset(菜單左側(cè)的水平偏移或菜單頂部的垂直偏移)等屬性。bindContextMenu(isShown,content,options)8.1.3轉(zhuǎn)場(chǎng)動(dòng)畫(5)bindPopup屬性bindPopup屬性用于為組件綁定氣泡提示,即一種氣泡樣式的提示框,該提示框通常用于對(duì)某個(gè)組件進(jìn)行功能說(shuō)明。bindPopup屬性的語(yǔ)法格式如下。
參數(shù)show表示提示框顯示狀態(tài)。參數(shù)popup用于配置彈出氣泡提示的參數(shù),包括message(提示內(nèi)容)、showInSubWindow(是否在子窗口中顯示)、textColor(文本顏色)、font(字體)等。bindPopup(show,popup)8.1.3轉(zhuǎn)場(chǎng)動(dòng)畫下面以bindContentCover屬性為例演示轉(zhuǎn)場(chǎng)動(dòng)畫的使用方法,實(shí)現(xiàn)顯示廣告倒計(jì)時(shí)的效果。8.1.3轉(zhuǎn)場(chǎng)動(dòng)畫2.出現(xiàn)/消失轉(zhuǎn)場(chǎng)動(dòng)畫使用組件的transition屬性可以在一個(gè)組件出現(xiàn)或者消失時(shí)添加動(dòng)畫效果。該屬性接收TransitionEffect實(shí)例作為參數(shù),該實(shí)例用于指定轉(zhuǎn)場(chǎng)效果。通過(guò)調(diào)用TransitionEffect類的靜態(tài)方法可以創(chuàng)建TransitionEffect實(shí)例,這些靜態(tài)方法如下。方法說(shuō)明opacity()用于設(shè)置組件轉(zhuǎn)場(chǎng)時(shí)的不透明度效果translate()用于設(shè)置組件轉(zhuǎn)場(chǎng)時(shí)的平移效果scale()用于設(shè)置組件轉(zhuǎn)場(chǎng)時(shí)的縮放效果rotate()用于設(shè)置組件轉(zhuǎn)場(chǎng)時(shí)的旋轉(zhuǎn)效果move()用于指定組件轉(zhuǎn)場(chǎng)時(shí)從屏幕邊緣滑入或向屏幕邊緣滑出的效果asymmetric()用于指定非對(duì)稱的轉(zhuǎn)場(chǎng)效果,即出現(xiàn)和消失采用不同的轉(zhuǎn)場(chǎng)效果8.1.3轉(zhuǎn)場(chǎng)動(dòng)畫①opacity()方法的參數(shù)表示不透明度,取值范圍為0~1,1表示不透明,0表示完全透明。②translate()方法的參數(shù)是一個(gè)包含3個(gè)可選屬性的對(duì)象,其中屬性x表示x軸的平移距離;屬性y表示y軸的平移距離;屬性z表示z軸的平移距離。③scale()方法的參數(shù)是一個(gè)包含5個(gè)可選屬性的對(duì)象,具體如下。屬性x表示x軸的縮放倍數(shù)。當(dāng)x>1時(shí)沿x軸方向放大,x=1時(shí)保持不變,當(dāng)0≤x<1時(shí)沿x軸方向縮小,當(dāng)x<0時(shí)沿x軸翻轉(zhuǎn)并縮放。屬性y表示y軸的縮放倍數(shù)。當(dāng)y>1時(shí)沿y軸方向放大,y=1時(shí)保持不變,當(dāng)0≤y<1時(shí)沿y軸方向縮小,當(dāng)y<0時(shí)沿y軸翻轉(zhuǎn)并縮放。屬性z表示z軸的縮放倍數(shù)。當(dāng)z>1時(shí)沿z軸方向放大,z=1時(shí)保持不變,當(dāng)0≤z<1時(shí)沿z軸方向縮小,當(dāng)z<0時(shí)沿z軸翻轉(zhuǎn)并縮放。屬性centerX表示變換中心點(diǎn)x軸坐標(biāo)。屬性centerY表示變換中心點(diǎn)y軸坐標(biāo)。8.1.3轉(zhuǎn)場(chǎng)動(dòng)畫④rotate()方法的參數(shù)是一個(gè)包含多個(gè)屬性的對(duì)象,其中最常用的是必選屬性angle,它表示旋轉(zhuǎn)角度,取值為正時(shí)表示相對(duì)于旋轉(zhuǎn)軸方向順時(shí)針轉(zhuǎn)動(dòng),取值為負(fù)時(shí)表示相對(duì)于旋轉(zhuǎn)軸方向逆時(shí)針轉(zhuǎn)動(dòng)。取值可為number類型或string類型,例如90、'90deg'都代表90°。
⑤move()方法只有一個(gè)參數(shù),該參數(shù)有4個(gè)可選值,具體如下。
TransitionEdge.TOP:表示屏幕的上邊緣。
TransitionEdge.BOTTOM:表示屏幕的下邊緣。
TransitionEdge.START:表示屏幕的左邊緣。
TransitionEdge.END:表示屏幕的右邊緣。⑥asymmetric()方法有兩個(gè)參數(shù),第1個(gè)參數(shù)表示出現(xiàn)時(shí)的轉(zhuǎn)場(chǎng)效果,第2個(gè)參數(shù)表示消失時(shí)的轉(zhuǎn)場(chǎng)效果。如果不調(diào)用asymmetric()方法,則默認(rèn)情況下消失時(shí)的轉(zhuǎn)場(chǎng)效果與出現(xiàn)時(shí)的轉(zhuǎn)場(chǎng)效果完全相反。8.1.3轉(zhuǎn)場(chǎng)動(dòng)畫TransitionEffect類還提供了一些靜態(tài)屬性,用于使用預(yù)設(shè)的轉(zhuǎn)場(chǎng)效果,這些靜態(tài)屬性的值也是TransitionEffect實(shí)例,具體如下表所示。屬性說(shuō)明IDENTITY禁用轉(zhuǎn)場(chǎng)效果OPACITY用于指定不透明度為0的轉(zhuǎn)場(chǎng)效果SLIDE用于指定出現(xiàn)時(shí)從左側(cè)滑入、消失時(shí)從右側(cè)滑出的轉(zhuǎn)場(chǎng)效果SLIDE_SWITCH用于指定出現(xiàn)時(shí)從右側(cè)先縮小再放大滑入、消失時(shí)從左側(cè)先縮小再放大滑出的轉(zhuǎn)場(chǎng)效果8.1.3轉(zhuǎn)場(chǎng)動(dòng)畫TransitionEffect實(shí)例的常用方法如下表所示。方法說(shuō)明combine()通過(guò)組合的方式實(shí)現(xiàn)多種轉(zhuǎn)場(chǎng)效果animation()指定組件轉(zhuǎn)場(chǎng)的動(dòng)畫參數(shù)8.1.3轉(zhuǎn)場(chǎng)動(dòng)畫①combine()方法的參數(shù)表示要組合的轉(zhuǎn)場(chǎng)效果,該轉(zhuǎn)場(chǎng)效果會(huì)與調(diào)用combine()方法的轉(zhuǎn)場(chǎng)效果合并,例如A.combine(B)表示將轉(zhuǎn)場(chǎng)效果B與轉(zhuǎn)場(chǎng)效果A合并。該方法的返回值為合并后的轉(zhuǎn)場(chǎng)效果。
②animation()方法的參數(shù)是一個(gè)表示動(dòng)畫參數(shù)的對(duì)象,該對(duì)象的常用屬性如下。
duration:動(dòng)畫播放時(shí)長(zhǎng),默認(rèn)值為1000,單位為毫秒。
tempo:動(dòng)畫播放速度,值越大則動(dòng)畫播放越快,值越小則播放越慢,默認(rèn)值為1,值為0時(shí)表示無(wú)動(dòng)畫效果。
curve:動(dòng)畫曲線,默認(rèn)值為Curve.EaseInOut,表示動(dòng)畫以低速開始和結(jié)束。
delay:動(dòng)畫延遲播放時(shí)間,默認(rèn)值為0,單位為毫秒,默認(rèn)不延時(shí)播放。iterations:動(dòng)畫播放次數(shù),默認(rèn)值為1,設(shè)置為-1時(shí)表示無(wú)限次播放,設(shè)置為0時(shí)表示不播放。8.1.3轉(zhuǎn)場(chǎng)動(dòng)畫下面演示transition屬性的使用方法,實(shí)現(xiàn)3種轉(zhuǎn)場(chǎng)效果的組合,分別是不透明度效果、旋轉(zhuǎn)效果、平移效果,示例代碼如下。.transition(TransitionEffect.OPACITY.animation({duration:1000}).combine(TransitionEffect.rotate({angle:-180})).combine(TransitionEffect.move(TransitionEdge.TOP)))8.1.3轉(zhuǎn)場(chǎng)動(dòng)畫下面演示如何使用transition屬性實(shí)現(xiàn)圖像的轉(zhuǎn)場(chǎng)效果。8.1.3轉(zhuǎn)場(chǎng)動(dòng)畫3.共享元素轉(zhuǎn)場(chǎng)動(dòng)畫共享元素轉(zhuǎn)場(chǎng)動(dòng)畫是指在頁(yè)面切換時(shí),將兩個(gè)頁(yè)面中相同的共享元素在切換過(guò)程中自動(dòng)完成過(guò)渡,從而營(yíng)造出連貫和自然的過(guò)渡效果。其中,共享元素是指兩個(gè)頁(yè)面中需要添加過(guò)渡效果的組件。共享元素轉(zhuǎn)場(chǎng)動(dòng)畫通過(guò)sharedTransition屬性實(shí)現(xiàn),其語(yǔ)法格式如下。id參數(shù)用于將組件標(biāo)識(shí)為共享元素,當(dāng)兩個(gè)頁(yè)面存在具有相同id的共享元素時(shí),即可實(shí)現(xiàn)共享元素轉(zhuǎn)場(chǎng)動(dòng)畫。sharedTransition(id,options)8.1.3轉(zhuǎn)場(chǎng)動(dòng)畫options參數(shù)是一個(gè)用于設(shè)置動(dòng)畫參數(shù)的對(duì)象,其常用屬性如下。屬性說(shuō)明duration用于設(shè)置共享元素轉(zhuǎn)場(chǎng)動(dòng)畫播放時(shí)長(zhǎng),默認(rèn)值為1000,單位為毫秒curve用于設(shè)置共享元素轉(zhuǎn)場(chǎng)動(dòng)畫曲線,默認(rèn)值為Curve.Linear,表示動(dòng)畫從頭到尾的速度都是相同的delay用于設(shè)置共享元素轉(zhuǎn)場(chǎng)動(dòng)畫延遲執(zhí)行的時(shí)間。默認(rèn)值為0,表示不延遲播放,單位為毫秒motionPath用于設(shè)置運(yùn)動(dòng)路徑信息zIndex用于設(shè)置z軸type用于設(shè)置動(dòng)畫類型8.1.3轉(zhuǎn)場(chǎng)動(dòng)畫motionPath屬性的常用可選值如下。
①path:用于設(shè)置路徑。
②from:用于設(shè)置路徑的起始值。
③to:用于設(shè)置路徑的終止值。
④rotatable:表示是否跟隨路徑進(jìn)行旋轉(zhuǎn),默認(rèn)值為false,表示不旋轉(zhuǎn)。
type屬性的常用可選值如下。
①SharedTransitionEffectType.Exchange:默認(rèn)值,表示將源頁(yè)面元素移動(dòng)到目標(biāo)頁(yè)面元素位置并適當(dāng)縮放。
②SharedTransitionEffectType.Static:表示目標(biāo)頁(yè)面元素的位置保持不變,可以配置不透明度動(dòng)畫。
當(dāng)type屬性值為SharedTransitionEffectType.Exchange時(shí),motionPath才會(huì)生效。注意8.1.3轉(zhuǎn)場(chǎng)動(dòng)畫下面演示如何使用sharedTransition屬性實(shí)現(xiàn)頁(yè)面跳轉(zhuǎn)時(shí)放大圖像的轉(zhuǎn)場(chǎng)效果。網(wǎng)絡(luò)請(qǐng)求8.28.2.1申請(qǐng)網(wǎng)絡(luò)權(quán)限
先定一個(gè)小目標(biāo)!掌握網(wǎng)絡(luò)權(quán)限的申請(qǐng)方法,能夠按需申請(qǐng)網(wǎng)絡(luò)權(quán)限8.2.1申請(qǐng)網(wǎng)絡(luò)權(quán)限鴻蒙具有嚴(yán)格的應(yīng)用權(quán)限管控,以確保應(yīng)用合理地使用每項(xiàng)權(quán)限。若應(yīng)用需要發(fā)送網(wǎng)絡(luò)請(qǐng)求,則需要申請(qǐng)網(wǎng)絡(luò)權(quán)限。在正式學(xué)習(xí)如何申請(qǐng)網(wǎng)絡(luò)權(quán)限之前,介紹一下鴻蒙的權(quán)限機(jī)制。8.2.1申請(qǐng)網(wǎng)絡(luò)權(quán)限根據(jù)鴻蒙開發(fā)文檔的說(shuō)明,開發(fā)者在開發(fā)應(yīng)用時(shí)進(jìn)行的權(quán)限申請(qǐng)需要遵循以下原則。①應(yīng)用(包括應(yīng)用引用的第三方庫(kù))所需權(quán)限必須在應(yīng)用的配置文件(entry/src/main/module.json5)中嚴(yán)格按照權(quán)限開發(fā)指導(dǎo)逐個(gè)聲明。②權(quán)限申請(qǐng)滿足最小化原則,禁止申請(qǐng)非必要的、已廢棄的權(quán)限。應(yīng)用申請(qǐng)過(guò)多權(quán)限會(huì)引起用戶對(duì)應(yīng)用安全性的擔(dān)憂以及使用體驗(yàn)變差,也會(huì)影響到應(yīng)用的安裝率和留存率。③應(yīng)用申請(qǐng)敏感權(quán)限時(shí),必須填寫權(quán)限使用理由。敏感權(quán)限通常是指與用戶隱私密切相關(guān)的權(quán)限,包括地理位置、相機(jī)、麥克風(fēng)、日歷、健身運(yùn)動(dòng)、身體傳感器、音樂(lè)、文件、圖片、視頻等權(quán)限。④應(yīng)用敏感權(quán)限須在對(duì)應(yīng)業(yè)務(wù)功能執(zhí)行前動(dòng)態(tài)申請(qǐng),滿足隱私最小化要求。⑤用戶拒絕授予某個(gè)權(quán)限后,應(yīng)用與此權(quán)限無(wú)關(guān)的其他業(yè)務(wù)功能應(yīng)能正常使用。8.2.1申請(qǐng)網(wǎng)絡(luò)權(quán)限根據(jù)授權(quán)方式的不同,權(quán)限類型可分為system_grant(系統(tǒng)授權(quán))和user_grant(用戶授權(quán)),具體介紹如下。①system_grant:在該類型的權(quán)限許可下,應(yīng)用可以訪問(wèn)不涉及用戶或設(shè)備的敏感信息的數(shù)據(jù);應(yīng)用被允許執(zhí)行對(duì)操作系統(tǒng)和其他應(yīng)用產(chǎn)生的影響可控的操作。②user_grant:在該類型的權(quán)限許可下,應(yīng)用可以訪問(wèn)涉及用戶或設(shè)備的敏感信息的數(shù)據(jù);應(yīng)用被允許執(zhí)行可能對(duì)操作系統(tǒng)或者其他應(yīng)用產(chǎn)生嚴(yán)重影響的操作。8.2.1申請(qǐng)網(wǎng)絡(luò)權(quán)限system_grant權(quán)限和user_grant權(quán)限在申請(qǐng)方式上的區(qū)別如下。①對(duì)于申請(qǐng)system_grant權(quán)限的應(yīng)用,操作系統(tǒng)會(huì)在用戶安裝應(yīng)用時(shí),自動(dòng)把相應(yīng)權(quán)限授予應(yīng)用。②對(duì)于申請(qǐng)user_grant權(quán)限的應(yīng)用,不僅需要在安裝包中申請(qǐng)權(quán)限,還需要在應(yīng)用運(yùn)行時(shí)通過(guò)彈窗的方式請(qǐng)求用戶授權(quán)。在用戶手動(dòng)允許授權(quán)后,應(yīng)用才會(huì)真正獲取相應(yīng)權(quán)限,從而成功訪問(wèn)并操作目標(biāo)對(duì)象。8.2.1申請(qǐng)網(wǎng)絡(luò)權(quán)限鴻蒙中的網(wǎng)絡(luò)權(quán)限屬于system_grant權(quán)限,申請(qǐng)方式比較簡(jiǎn)單,應(yīng)用不需要向用戶發(fā)起請(qǐng)求即可獲取該權(quán)限。若要申請(qǐng)網(wǎng)絡(luò)權(quán)限,可以在entry/src/main/module.json5文件中的module配置項(xiàng)內(nèi)添加申請(qǐng)網(wǎng)絡(luò)權(quán)限的代碼,示例代碼如下。"requestPermissions":[{"name":"ohos.permission.INTERNET"},{"name":"ohos.permission.GET_NETWORK_INFO"}]8.2.2啟動(dòng)服務(wù)器
先定一個(gè)小目標(biāo)!掌握啟動(dòng)服務(wù)器的方法,能夠完成服務(wù)器的啟動(dòng)8.2.2啟動(dòng)服務(wù)器要想學(xué)習(xí)如何發(fā)送網(wǎng)絡(luò)請(qǐng)求,需要準(zhǔn)備一個(gè)可以接收網(wǎng)絡(luò)請(qǐng)求的服務(wù)器。本課程在配套源碼中提供了一個(gè)基于Node.js開發(fā)的服務(wù)器,雙擊“啟動(dòng)服務(wù)器.bat”文件即可啟動(dòng)服務(wù)器。8.2.2啟動(dòng)服務(wù)器服務(wù)器啟動(dòng)成功后,會(huì)出現(xiàn)如下信息。serverrunningat00:3000上述信息中的IP地址00是不固定的,我們應(yīng)以自己的IP地址為準(zhǔn)。注意8.2.2啟動(dòng)服務(wù)器服務(wù)器的接口如下。①獲取所有數(shù)據(jù)的接口:00:3000/student。請(qǐng)求方式:GET。返回結(jié)果:{"name":"小明","age":18}。②獲取指定字段數(shù)據(jù)的接口:00:3000/student?field=name。請(qǐng)求方式:GET。返回結(jié)果:"小明"。③提交數(shù)據(jù)的接口:00:3000/student。請(qǐng)求方式:POST。請(qǐng)求體:{"name":"小明","age":18}。返回結(jié)果:{"message":"Datasavedsuccessfully"}。8.2.3使用NetworkKit發(fā)送網(wǎng)絡(luò)請(qǐng)求
先定一個(gè)小目標(biāo)!掌握使用NetworkKit發(fā)送網(wǎng)絡(luò)請(qǐng)求的方法,能夠使用NetworkKit發(fā)送網(wǎng)絡(luò)請(qǐng)求8.2.3使用NetworkKit發(fā)送網(wǎng)絡(luò)請(qǐng)求NetworkKit又被稱為網(wǎng)絡(luò)服務(wù),它主要提供HTTP(HypertextTransferProtocol,超文本傳送協(xié)議)數(shù)據(jù)請(qǐng)求、WebSocket連接、Socket連接、網(wǎng)絡(luò)連接管理以及MDNS(MulticastDNS,多播DNS)管理功能,其中最常用的是HTTP數(shù)據(jù)請(qǐng)求功能。8.2.3使用NetworkKit發(fā)送網(wǎng)絡(luò)請(qǐng)求NetworkKit提供了http對(duì)象(或稱為http模塊)用于實(shí)現(xiàn)HTTP數(shù)據(jù)請(qǐng)求,導(dǎo)入http對(duì)象的示例代碼如下。導(dǎo)入http對(duì)象后,需要調(diào)用http對(duì)象的createHttp()方法創(chuàng)建HttpRequest實(shí)例,每個(gè)HttpRequest實(shí)例代表一個(gè)HTTP請(qǐng)求任務(wù),并且不可復(fù)用,示例代碼如下。import{http}from'@kit.NetworkKit';consthttpRequest=http.createHttp();8.2.3使用NetworkKit發(fā)送網(wǎng)絡(luò)請(qǐng)求通過(guò)調(diào)用HttpRequest實(shí)例的request()方法可以發(fā)送網(wǎng)絡(luò)請(qǐng)求,該方法的語(yǔ)法格式如下。參數(shù)url表示請(qǐng)求的URL。參數(shù)options表示用于設(shè)置請(qǐng)求的可選參數(shù)的對(duì)象。參數(shù)callback表示發(fā)送請(qǐng)求后執(zhí)行的回調(diào)函數(shù)。參數(shù)options可以省略,省略時(shí),默認(rèn)使用GET請(qǐng)求方式,并且參數(shù)callback變?yōu)榈?個(gè)參數(shù)。request(url,options,callback);8.2.3使用NetworkKit發(fā)送網(wǎng)絡(luò)請(qǐng)求request()方法的參數(shù)options的常用屬性如下表所示。屬性說(shuō)明method請(qǐng)求方式extraData發(fā)送請(qǐng)求的額外數(shù)據(jù),默認(rèn)不發(fā)送額外數(shù)據(jù)expectDataType指定返回?cái)?shù)據(jù)的類型,默認(rèn)不指定返回?cái)?shù)據(jù)的類型。如果指定了返回?cái)?shù)據(jù)的類型,程序?qū)?huì)優(yōu)先返回指定類型的數(shù)據(jù)usingCache是否使用緩存,默認(rèn)值為true,表示使用緩存。緩存跟隨當(dāng)前進(jìn)程生效,新緩存會(huì)替換舊緩存。priority請(qǐng)求并發(fā)優(yōu)先級(jí),值越大優(yōu)先級(jí)越高,取值范圍為1~1000,默認(rèn)值為1header請(qǐng)求頭字段8.2.3使用NetworkKit發(fā)送網(wǎng)絡(luò)請(qǐng)求method屬性的可選值如下。
①RequestMethod.GET:表示GET請(qǐng)求方式,一般用于查詢數(shù)據(jù)。②RequestMethod.POST:表示POST請(qǐng)求方式,一般用于提交數(shù)據(jù)。③RequestMethod.PUT:表示PUT請(qǐng)求方式,一般用于修改數(shù)據(jù)。④RequestMethod.DELETE:表示DELETE請(qǐng)求方式,一般用于刪除數(shù)據(jù)。
expectDataType屬性的常用可選值如下。
①HttpDataType.STRING:string類型。
②HttpDataType.OBJECT:對(duì)象類型。8.2.3使用NetworkKit發(fā)送網(wǎng)絡(luò)請(qǐng)求request()方法的參數(shù)callback表示一個(gè)回調(diào)函數(shù),該函數(shù)的參數(shù)是一個(gè)HttpResponse實(shí)例,該實(shí)例的常用屬性如下表所示。屬性說(shuō)明result服務(wù)器的響應(yīng)內(nèi)容resultType服務(wù)器的響應(yīng)內(nèi)容的類型responseCode服務(wù)器的響應(yīng)狀態(tài)碼header服務(wù)器的響應(yīng)頭cookies服務(wù)器的響應(yīng)cookiesperformanceTiming請(qǐng)求的各個(gè)階段的耗時(shí)8.2.3使用NetworkKit發(fā)送網(wǎng)絡(luò)請(qǐng)求request()方法還支持使用await關(guān)鍵字。當(dāng)使用await關(guān)鍵字調(diào)用request()方法時(shí),要省略callback參數(shù),通過(guò)返回值接收HttpResponse實(shí)例。
在使用request()方法時(shí)需要注意以下3點(diǎn)。
①僅支持接收數(shù)據(jù)大小為5MB以內(nèi)的數(shù)據(jù)。②
若請(qǐng)求的URL包含中文字符或其他非ASCII字符,需先調(diào)用encodeURL()函數(shù)進(jìn)行編碼,該函數(shù)的參數(shù)為待編碼的字符串,返回值為編碼后的字符串。
③當(dāng)請(qǐng)求發(fā)送完成后,需要調(diào)用destroy()方法銷毀HttpRequest實(shí)例,從而釋放資源,該方法沒有參數(shù)且沒有返回值。8.2.3使用NetworkKit發(fā)送網(wǎng)絡(luò)請(qǐng)求下面演示http對(duì)象的使用方法。8.2.4使用RemoteCommunicationKit發(fā)送網(wǎng)絡(luò)請(qǐng)求
先定一個(gè)小目標(biāo)!掌握使用RemoteCommunicationKit發(fā)送網(wǎng)絡(luò)請(qǐng)求的方法,能夠使用RemoteCommunicationKit發(fā)送網(wǎng)絡(luò)請(qǐng)求8.2.4使用RemoteCommunicationKit發(fā)送網(wǎng)絡(luò)請(qǐng)求RemoteCommunicationKit又被稱為遠(yuǎn)場(chǎng)通信服務(wù),它是鴻蒙提供的另一個(gè)用于發(fā)送網(wǎng)絡(luò)請(qǐng)求的工具。相比NetworkKit,RemoteCommunicationKit
更專注于HTTP數(shù)據(jù)請(qǐng)求功能,提供了更加便捷的操作方式。8.2.4使用RemoteCommunicationKit發(fā)送網(wǎng)絡(luò)請(qǐng)求若使用RemoteCommunicationKit,需要先導(dǎo)入rcp對(duì)象(或稱為rcp模塊),導(dǎo)入rcp對(duì)象的示例代碼如下。導(dǎo)入rcp對(duì)象后,需要通過(guò)createSession()方法創(chuàng)建Session實(shí)例,示例代碼如下。createSession()方法的返回值session是一個(gè)Session實(shí)例,它表示一個(gè)HTTP會(huì)話。import{rcp}from'@kit.RemoteCommunicationKit';constsession=rcp.createSession();8.2.4使用RemoteCommunicationKit發(fā)送網(wǎng)絡(luò)請(qǐng)求Session實(shí)例的常用方法如下表所示。方法說(shuō)明fetch()發(fā)送請(qǐng)求get()發(fā)送GET方式的請(qǐng)求post()發(fā)送POST方式的請(qǐng)求put()發(fā)送PUT方式的請(qǐng)求head()發(fā)送HEAD方式的請(qǐng)求delete()發(fā)送DELETE方式的請(qǐng)求downloadToFile()發(fā)送下載文件的請(qǐng)求uploadFromFile()發(fā)送上傳文件的請(qǐng)求cancel()取消請(qǐng)求close()關(guān)閉會(huì)話8.2.4使用RemoteCommunicationKit發(fā)送網(wǎng)絡(luò)請(qǐng)求get()方法的語(yǔ)法格式如下。參數(shù)url表示請(qǐng)求的URL。參數(shù)destination是可選參數(shù),表示響應(yīng)的目標(biāo)位置或目的地,通常不需要設(shè)置該參數(shù)。
post()方法的語(yǔ)法格式如下。
參數(shù)url表示請(qǐng)求的URL。參數(shù)content是可選參數(shù),表示請(qǐng)求的正文部分的內(nèi)容。參數(shù)destination是可選參數(shù),表示響應(yīng)的目標(biāo)位置或目的地,通常不需要設(shè)置該參數(shù)。get(url,destination?)post(url,content?,destination?)8.2.4使用RemoteCommunicationKit發(fā)送網(wǎng)絡(luò)請(qǐng)求get()方法和post()方法的返回值都是Promise對(duì)象,用于對(duì)請(qǐng)求的結(jié)果進(jìn)行處理。Promise對(duì)象的then()方法的第1個(gè)參數(shù)是一個(gè)回調(diào)函數(shù),該回調(diào)函數(shù)接收Response實(shí)例,該實(shí)例表示響應(yīng)結(jié)果。Response實(shí)例的常用屬性如下表所示。屬性說(shuō)明body服務(wù)器的響應(yīng)內(nèi)容statusCode服務(wù)器的響應(yīng)狀態(tài)碼headers服務(wù)器的響應(yīng)頭cookies服務(wù)器的響應(yīng)cookies8.2.4使用RemoteCommunicationKit發(fā)送網(wǎng)絡(luò)請(qǐng)求Response實(shí)例的常用方法如下表所示。close()方法的語(yǔ)法格式如下。close()方法沒有參數(shù)和返回值。方法說(shuō)明toString()獲取字符串類型的服務(wù)器響應(yīng)結(jié)果toJSON()獲取JSON反序列化后的服務(wù)器響應(yīng)結(jié)果close()8.2.4使用RemoteCommunicationKit發(fā)送網(wǎng)絡(luò)請(qǐng)求下面演示rcp對(duì)象的使用方法。8.2.5使用axios發(fā)送網(wǎng)絡(luò)請(qǐng)求
先定一個(gè)小目標(biāo)!掌握使用axios發(fā)送網(wǎng)絡(luò)請(qǐng)求的方法,能夠使用axios發(fā)送網(wǎng)絡(luò)請(qǐng)求8.2.5使用axios發(fā)送網(wǎng)絡(luò)請(qǐng)求axios是一個(gè)第三方的網(wǎng)絡(luò)請(qǐng)求庫(kù),它常用于Web前端開發(fā)中。鴻蒙允許開發(fā)者使用axios發(fā)送網(wǎng)絡(luò)請(qǐng)求,從而讓具有Web前端開發(fā)經(jīng)驗(yàn)的開發(fā)者可以快速上手鴻蒙開發(fā)。8.2.5使用axios發(fā)送網(wǎng)絡(luò)請(qǐng)求鴻蒙為開發(fā)者提供了“OpenHarmony三方庫(kù)中心倉(cāng)”平臺(tái),開發(fā)者可以通過(guò)該平臺(tái)快速獲取第三方庫(kù),也可以將自己的代碼共享到該平臺(tái)。在該平臺(tái)中可以找到axios的發(fā)布頁(yè)面。8.2.5使用axios發(fā)送網(wǎng)絡(luò)請(qǐng)求1.安裝axios在鴻蒙項(xiàng)目中安裝axios需要使用ohpm。ohpm是鴻蒙第三方庫(kù)的包管理工具,它類似Web前端開發(fā)中的npm工具,其用法也與npm工具非常相似。使用ohpm安裝axios有兩種方式:(1)通過(guò)執(zhí)行命令的方式安裝
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 企業(yè)級(jí)數(shù)據(jù)共享的區(qū)塊鏈技術(shù)發(fā)展趨勢(shì)預(yù)測(cè)
- 嚴(yán)控廢物合同范例
- 豐澤區(qū) 勞動(dòng)合同樣本
- 醫(yī)療數(shù)據(jù)安全與隱私保護(hù)的國(guó)際法規(guī)探討
- 批評(píng)與自我批評(píng)發(fā)言稿模版
- 綠橙色可愛卡通食品安全模板
- 15天賬期合同范例
- 從商業(yè)視角看如何利用區(qū)塊鏈技術(shù)增強(qiáng)數(shù)據(jù)安全性
- 員工禮儀學(xué)習(xí)心得體會(huì)模版
- 廈門市2025 屆高三畢業(yè)班第四次質(zhì)量檢測(cè)-化學(xué)+答案
- 反恐安全政策
- 創(chuàng)新教學(xué)任務(wù)
- 工業(yè)管道的分類和分級(jí)
- 淺談膿毒血癥的集束化治療及護(hù)理-PPT課件
- 架子工班組承包協(xié)議
- 機(jī)器人任務(wù)規(guī)劃
- 化驗(yàn)室化學(xué)試劑臺(tái)賬范例
- 楊家灣220KV變電站工程預(yù)算表
- 易拉罐回收機(jī)設(shè)計(jì)畢業(yè)設(shè)計(jì)
- 六類網(wǎng)線檢測(cè)報(bào)告(共9頁(yè))
- 教師素養(yǎng)試題及答案
評(píng)論
0/150
提交評(píng)論