uni-app移動(dòng)應(yīng)用開(kāi)發(fā)課件 5-uni-app組件_第1頁(yè)
uni-app移動(dòng)應(yīng)用開(kāi)發(fā)課件 5-uni-app組件_第2頁(yè)
uni-app移動(dòng)應(yīng)用開(kāi)發(fā)課件 5-uni-app組件_第3頁(yè)
uni-app移動(dòng)應(yīng)用開(kāi)發(fā)課件 5-uni-app組件_第4頁(yè)
uni-app移動(dòng)應(yīng)用開(kāi)發(fā)課件 5-uni-app組件_第5頁(yè)
已閱讀5頁(yè),還剩61頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

移動(dòng)應(yīng)用

開(kāi)發(fā)uniAppuni-app組件第

章學(xué)習(xí)目標(biāo)知識(shí)目標(biāo)

掌握各個(gè)Api接口的使用開(kāi)發(fā)并完善智云翻譯項(xiàng)目。能力目標(biāo)

具備熟練應(yīng)用各種API的能力具備使用Vuex插件管理數(shù)據(jù)的能力具備項(xiàng)目測(cè)試能力具備使用插件的能力。素質(zhì)目標(biāo)

具有團(tuán)隊(duì)協(xié)作精神具有良好的軟件編碼規(guī)范素養(yǎng)具備遵循軟件項(xiàng)目開(kāi)發(fā)流程的職業(yè)素養(yǎng)具有探索新知、不畏困難的精神。目錄CONTENTS計(jì)時(shí)器交互反饋API概述123網(wǎng)絡(luò)4數(shù)據(jù)緩存5路由6案例

智云翻譯7網(wǎng)絡(luò)模塊:包含發(fā)送Http網(wǎng)絡(luò)請(qǐng)求、文件上傳下載、WebSocket、SocketTask、Udp通信等與網(wǎng)絡(luò)相關(guān)的API?;A(chǔ)模塊:包含日志打印、定時(shí)器、攔截器、base64字符串和ArrayBuffer相互轉(zhuǎn)換等工具API。數(shù)據(jù)緩存模塊:提供了本地?cái)?shù)據(jù)緩存的能力。界面模塊:用于界面交互的API,比如提示框、模態(tài)框;以及媒體查詢、設(shè)置導(dǎo)航條、設(shè)置TabBar、下拉刷新、設(shè)置背景等各種與界面相關(guān)的API。5.1API概述媒體模塊:提供了圖片、路由、文件、音頻、視頻、直播等各種媒體API。5.1API概述設(shè)備模塊:提供訪問(wèn)系統(tǒng)信息、內(nèi)存、剪切板、撥打電話、訪問(wèn)藍(lán)牙設(shè)備等與設(shè)備相關(guān)的API。文件模塊:包含保存文件、刪除文件、得到文件信息、打開(kāi)文檔、得到文件系統(tǒng)管理器等API。繪畫(huà)模塊:提供了有關(guān)操作Canvas的API。第三方服務(wù)模塊:包括獲取服務(wù)供應(yīng)商、登錄、分享、支付、推送、語(yǔ)音等常見(jiàn)的應(yīng)用場(chǎng)景API。許多API進(jìn)行了Promise化,在調(diào)用的時(shí)候可以用Promise的調(diào)用方式來(lái)進(jìn)行。consttask=uni.connectSocket(//正常使用success(res){console.log(res)})uni.connectSocket().then(res=>{//Promise化console.log(res)//此處即為正常使用時(shí)success回調(diào)的res})5.1API概述同步的方法(即以sync結(jié)束)。例如:uni.getSystemInfoSync()1以create開(kāi)頭的方法。例如:uni.createMapContext()2以manager結(jié)束的方法。例如:uni.getBackgroundAudioManager()3以下幾類(lèi)API沒(méi)有進(jìn)行Promise化:5.1API概述setTimeout在定時(shí)到期以后執(zhí)行注冊(cè)的回調(diào)函數(shù)。setInterval按照指定的周期(以毫秒計(jì))來(lái)執(zhí)行注冊(cè)的回調(diào)函數(shù)。5.2計(jì)時(shí)器5.2計(jì)時(shí)器setTimeout1setTimeout(callback,delay,rest):設(shè)定一個(gè)定時(shí)器,在定時(shí)到期以后執(zhí)行注冊(cè)的回調(diào)函數(shù)。參數(shù)類(lèi)型必填說(shuō)明callbackFunction是回調(diào)函數(shù)delayNumber否執(zhí)行回調(diào)函數(shù)之間的時(shí)間間隔,單位msrestAny否param1,param2,...,paramN等附加參數(shù),它們會(huì)作為參數(shù)傳遞給回調(diào)函數(shù)setTimeout參數(shù)說(shuō)明5.2計(jì)時(shí)器setInterval2setInterval(callback,delay,rest):設(shè)定一個(gè)定時(shí)器,按照指定的周期(以毫秒計(jì))來(lái)執(zhí)行注冊(cè)的回調(diào)函數(shù)。delay為兩次執(zhí)行回調(diào)函數(shù)之間的時(shí)間間隔,單位為毫秒,其他參數(shù)、返回值與setTimeout相同。5.2.2取消計(jì)時(shí)器timeoutID和intervalID為Number類(lèi)型,要取消的定時(shí)器的編號(hào)。取消由setTimeout設(shè)置的定時(shí)器。clearTimeout(timeoutID):取消由setInterval設(shè)置的定時(shí)器。clearInterval(intervalID):參數(shù)說(shuō)明:setTimeout和setInterval設(shè)定的計(jì)時(shí)器都可以取消。實(shí)例:歡迎界面在welcome頁(yè)面中,顯示歡迎界面,2秒鐘后跳轉(zhuǎn)到index頁(yè)面。在onLoad()函數(shù)中設(shè)置定時(shí)器,并讀取系統(tǒng)信息,得到界面高度。在pages.json文件中,將welcome作為pages字段的第一項(xiàng)。計(jì)時(shí)器演示演示效果代碼實(shí)現(xiàn)timeout.vue5.3交互反饋uni.showToast顯示消息提示框uni.hideToast隱藏消息提示框uni.showModal顯示模態(tài)對(duì)話框uni.showLoading顯示loading提示框uni.hideLoading隱藏loading提示框uni.showActionSheet顯示操作菜單通過(guò)使用這些界面交互API,可以給用戶創(chuàng)造友好的使用體驗(yàn),提供提示信息。5.3.1信息提示框顯示信息提示框uni.showToast(OBJECT):隱藏消息框uni.hideToast():屬性類(lèi)型必填說(shuō)明平臺(tái)差異titleString是提示的內(nèi)容,長(zhǎng)度與icon取值有關(guān)。

iconString否圖標(biāo),有效值有success、loading、none。

imageString否自定義圖標(biāo)的本地路徑(app端暫不支持gif)App、H5、微信小程序、百度小程序maskBoolean否是否顯示透明蒙層,防止觸摸穿透,默認(rèn):falseApp、微信小程序durationNumber否提示的延遲時(shí)間,單位毫秒,默認(rèn):1500

positionString否顯示位置,填寫(xiě)有效值后只有title屬性生效,且不支持通過(guò)uni.hideToast隱藏。取值為top、center、bottomApptitleString是提示的內(nèi)容,長(zhǎng)度與icon取值有關(guān)。

iconString否圖標(biāo),有效值詳見(jiàn)下方說(shuō)明。

imageString否自定義圖標(biāo)的本地路徑(app端暫不支持gif)App、H5、微信小程序、百度小程序showToast(OBJECT)參數(shù)說(shuō)明5.3.1信息提示框值說(shuō)明平臺(tái)差異說(shuō)明success顯示成功圖標(biāo),此時(shí)title文本在小程序平臺(tái)最多顯示7個(gè)漢字長(zhǎng)度。支付寶小程序無(wú)長(zhǎng)度無(wú)限制loading顯示加載圖標(biāo),此時(shí)title文本在小程序平臺(tái)最多顯示7個(gè)漢字長(zhǎng)度。支付寶小程序不支持none不顯示圖標(biāo),此時(shí)title文本在小程序最多可顯示兩行,App僅支持單行顯示。icon屬性的取值說(shuō)明實(shí)例演示代碼實(shí)現(xiàn)在<script>模塊的methods中添加方法5.3.2loading提示框uni.showLoading(OBJECT):用來(lái)顯示loading提示框,其參數(shù)說(shuō)明如表所示。uni.hideLoading():用來(lái)隱藏loading提示框。參數(shù)類(lèi)型必填說(shuō)明平臺(tái)差異說(shuō)明titleString是提示的文字內(nèi)容,顯示在loading的下方

maskBoolean否是否顯示透明蒙層,防止觸摸穿透,默認(rèn):falseH5、App、微信小程序、百度小程序successFunction否接口調(diào)用成功的回調(diào)函數(shù)

failFunction否接口調(diào)用失敗的回調(diào)函數(shù)

completeFunction否接口調(diào)用結(jié)束的回調(diào)函數(shù)(調(diào)用成功、失敗都會(huì)執(zhí)行)showLoading(OBJECT)參數(shù)說(shuō)明5.3.2loading提示框5.3.3模態(tài)框uni.showModal(OBJECT):顯示模態(tài)彈窗,可以只有一個(gè)確定按鈕,也可以同時(shí)有確定和取消按鈕。參數(shù)類(lèi)型必填說(shuō)明平臺(tái)差異說(shuō)明titleString否提示的標(biāo)題

contentString否提示的內(nèi)容

showCancelBoolean否是否顯示取消按鈕,默認(rèn)為true

cancelTextString否取消按鈕的文字,默認(rèn)為"取消"

cancelColorHexColor否取消按鈕的文字顏色,默認(rèn)為"#000000"H5、微信小程序、百度小程序confirmTextString否確定按鈕的文字,默認(rèn)為"確定"

confirmColorHexColor否確定按鈕的文字顏色,默認(rèn)值:H5"#007aff",微信小程序:"#576B95",百度小程序"#3c76ff"H5、微信小程序、百度小程序editableBoolean否是否顯示輸入框H5和APP(3.2.10+)、、微信小程序(2.17.1+)placeholderTextString否顯示輸入框時(shí)的提示文本同上successFunction否接口調(diào)用成功的回調(diào)函數(shù),返回參數(shù)res.confirm為true時(shí)表示點(diǎn)了確定按鈕、res.cance為true時(shí),表示點(diǎn)了取消按鈕

failFunction否接口調(diào)用失敗的回調(diào)函數(shù)

completeFunction否接口調(diào)用結(jié)束的回調(diào)函數(shù)(調(diào)用成功、失敗都會(huì)執(zhí)行)showModal(OBJECT)參數(shù)說(shuō)明演示模態(tài)框在Interactive.vue的<template>模塊添加按鈕。在<script>模塊的methods中添加方法。5.3.4操作菜單uni.showActionSheet(OBJECT):從底部向上彈出操作菜單。參數(shù)類(lèi)型必填說(shuō)明平臺(tái)差異說(shuō)明titleString否菜單標(biāo)題App、H5、支付寶小程序、釘釘小程序、微信小程序3.4.5+(僅真機(jī)有效)alertTextString否警示文案(同菜單標(biāo)題)微信小程序(僅真機(jī)有效)itemListArray<String>是按鈕的文字?jǐn)?shù)組微信、百度、字節(jié)跳動(dòng)小程序數(shù)組長(zhǎng)度最大為6個(gè)itemColorHexColor否按鈕的文字顏色,字符串格式,默認(rèn)為"#000000"App-iOS、字節(jié)跳動(dòng)小程序、飛書(shū)小程序不支持popoverObject否大屏設(shè)備彈出原生選擇按鈕框的指示區(qū)域,默認(rèn)居中顯示。屬性有top、left、width、height,分別指定坐標(biāo)或?qū)挾?、高度App-iPad(2.6.6+)、H5(2.9.2)successFunction否接口調(diào)用成功的回調(diào)函數(shù),res.tAPIndex:用戶點(diǎn)擊的按鈕,從上到下,從0開(kāi)始

failFunction否接口調(diào)用失敗的回調(diào)函數(shù)

completeFunction否接口調(diào)用結(jié)束的回調(diào)函數(shù)(調(diào)用成功、失敗都會(huì)執(zhí)行)

uni.showActionSheet(OBJECT)參數(shù)說(shuō)明演示操作菜單在Interactive.vue的<template>模塊添加按鈕在<script>模塊的methods中添加方法5.4.1request發(fā)起請(qǐng)求發(fā)起網(wǎng)絡(luò)請(qǐng)求使用uni.request(OBJECT),相當(dāng)于ajax在實(shí)際開(kāi)發(fā)中獲取服務(wù)器端接口數(shù)據(jù),其使用方式類(lèi)似jQuery的ajax。參數(shù)名類(lèi)型必填默認(rèn)值說(shuō)明平臺(tái)差異說(shuō)明urlString是

開(kāi)發(fā)者服務(wù)器接口地址

dataObject/String/ArrayBuffer否

請(qǐng)求的參數(shù)App3.3.7以下不支持ArrayBuffer類(lèi)型headerObject否

設(shè)置請(qǐng)求的header,header中不能設(shè)置Referer。App、H5端會(huì)自動(dòng)帶上cookie,且H5端不可手動(dòng)修改methodString否GET有效值詳見(jiàn)下方說(shuō)明

timeoutNumber否60000超時(shí)時(shí)間,單位msH5(HBuilderX2.9.9+)、APP(HBuilderX2.9.9+)、微信小程序(2.10.0)、支付寶小程序dataTypeString否json如果設(shè)為json,會(huì)嘗試對(duì)返回的數(shù)據(jù)做一次JSON.parse

responseTypeString否text設(shè)置響應(yīng)的數(shù)據(jù)類(lèi)型。合法值:text、arraybuffer支付寶小程序不支持sslVerifyBoolean否TRUE驗(yàn)證ssl證書(shū)僅App安卓端支持(HBuilderX2.3.3+),不支持離線打包withCredentialsBoolean否FALSE跨域請(qǐng)求時(shí)是否攜帶憑證(cookies)僅H5支持(HBuilderX2.6.15+)firstIpv4Boolean否FALSEDNS解析時(shí)優(yōu)先使用ipv4僅App-Android支持(HBuilderX2.8.0+)successFunction否

收到開(kāi)發(fā)者服務(wù)器成功返回的回調(diào)函數(shù)

failFunction否

接口調(diào)用失敗的回調(diào)函數(shù)

completeFunction否

接口調(diào)用結(jié)束的回調(diào)函數(shù)(調(diào)用成功、失敗都會(huì)執(zhí)行)

uni.request(OBJECT)參數(shù)說(shuō)明5.4.1request發(fā)起請(qǐng)求data數(shù)據(jù):最終發(fā)送給服務(wù)器的數(shù)據(jù)是String類(lèi)型,如果傳入的data不是String類(lèi)型,會(huì)被轉(zhuǎn)換成String。轉(zhuǎn)換規(guī)則如下:1各參數(shù)說(shuō)明:(1)對(duì)于GET方法,會(huì)將數(shù)據(jù)轉(zhuǎn)換為querystring。例如{name:'name',age:18}轉(zhuǎn)換后的結(jié)果是name=name&age=18。(2)對(duì)于POST方法且header['content-type']為application/json的數(shù)據(jù),會(huì)進(jìn)行JSON序列化。(3)對(duì)于POST方法且header['content-type']為application/x-www-form-urlencoded的數(shù)據(jù),會(huì)將數(shù)據(jù)轉(zhuǎn)換為querystring。method屬性:取值可以有g(shù)et、post、put、deletete、connect、head、options、trace。App、H5、微信小程序支持所有取值。Method屬性值的取值取決于服務(wù)器端接口文檔的描述,不得自己隨意編寫(xiě)。25.4.1request發(fā)起請(qǐng)求success屬性:回調(diào)函數(shù)。3參數(shù)類(lèi)型說(shuō)明dataObject/String/ArrayBuffer開(kāi)發(fā)者服務(wù)器返回的數(shù)據(jù)statusCodeNumber開(kāi)發(fā)者服務(wù)器返回的HTTP狀態(tài)碼headerObject開(kāi)發(fā)者服務(wù)器返回的HTTPResponseHeadercookiesArray.<string>開(kāi)發(fā)者服務(wù)器返回的cookies,格式為字符串?dāng)?shù)組各參數(shù)說(shuō)明:success屬性的回調(diào)函數(shù)參數(shù)說(shuō)明演示網(wǎng)絡(luò)請(qǐng)求uni-app內(nèi)部對(duì)request進(jìn)行了promise封裝。調(diào)用成功會(huì)進(jìn)入then方法回調(diào)。調(diào)用失敗會(huì)進(jìn)入catch方法回調(diào)。5.4.2上傳文件使用uni.uploadFile()可以將本地資源上傳到開(kāi)發(fā)者服務(wù)器??蛻舳税l(fā)起一個(gè)

POST

請(qǐng)求,其中

content-type

multipart/form-data。參數(shù)名類(lèi)型必填說(shuō)明平臺(tái)差異說(shuō)明urlString是開(kāi)發(fā)者服務(wù)器url

filesArray是需要上傳的文件列表。使用files時(shí),filePath和name不生效。App、H5(2.6.15+)fileTypeString

文件類(lèi)型,image/video/audio僅支付寶小程序,且必填。fileFile否要上傳的文件對(duì)象。僅H5(2.6.15+)filePathString是要上傳文件資源的路徑。

nameString是文件對(duì)應(yīng)的key,開(kāi)發(fā)者在服務(wù)器端通過(guò)這個(gè)key可以獲取到文件二進(jìn)制內(nèi)容

headerObject否HTTP請(qǐng)求Header,header中不能設(shè)置Referer。

timeoutNumber否超時(shí)時(shí)間,單位msH5、APP(HBuilderX2.9.9+)formDataObject否HTTP請(qǐng)求中其他的formdata

successFunction否接口調(diào)用成功的回調(diào)函數(shù)

failFunction否接口調(diào)用失敗的回調(diào)函數(shù)

completeFunction否接口調(diào)用結(jié)束的回調(diào)函數(shù)(調(diào)用成功、失敗都會(huì)執(zhí)行)uni.uploadFile(OBJECT)參數(shù)說(shuō)明5.4.2上傳文件success回調(diào)函數(shù)中有2個(gè)參數(shù):data、errMsg、statusCode。參數(shù)含義與uni.request的success回調(diào)函數(shù)一致。參數(shù)名類(lèi)型必填說(shuō)明平臺(tái)差異說(shuō)明urlString是開(kāi)發(fā)者服務(wù)器url

filesArray是需要上傳的文件列表。使用files時(shí),filePath和name不生效。App、H5(2.6.15+)fileTypeString

文件類(lèi)型,image/video/audio僅支付寶小程序,且必填。fileFile否要上傳的文件對(duì)象。僅H5(2.6.15+)filePathString是要上傳文件資源的路徑。

nameString是文件對(duì)應(yīng)的key,開(kāi)發(fā)者在服務(wù)器端通過(guò)這個(gè)key可以獲取到文件二進(jìn)制內(nèi)容

headerObject否HTTP請(qǐng)求Header,header中不能設(shè)置Referer。

timeoutNumber否超時(shí)時(shí)間,單位msH5、APP(HBuilderX2.9.9+)formDataObject否HTTP請(qǐng)求中其他的formdata

successFunction否接口調(diào)用成功的回調(diào)函數(shù)

failFunction否接口調(diào)用失敗的回調(diào)函數(shù)

completeFunction否接口調(diào)用結(jié)束的回調(diào)函數(shù)(調(diào)用成功、失敗都會(huì)執(zhí)行)調(diào)用格式:uni.uploadFile(OBJECT)演示上傳文件頁(yè)面通過(guò)uni.chooseImage等接口獲取到一個(gè)本地資源的臨時(shí)文件路徑后,可通過(guò)uni.uploadFile將本地資源上傳到指定服務(wù)器。實(shí)現(xiàn)代碼<template>的代碼5.5數(shù)據(jù)緩存

uni-app提供了數(shù)據(jù)供數(shù)據(jù)本地緩存功能,如可以將用戶信息緩存到本地保存起來(lái),這樣就不用每次調(diào)用服務(wù)器來(lái)獲取這些信息了。數(shù)據(jù)緩存API就是用來(lái)將這些數(shù)據(jù)保存到本地的,另外還可以獲取本地緩存數(shù)據(jù)、移除緩存數(shù)據(jù)及清理緩存數(shù)據(jù)。在實(shí)際開(kāi)發(fā)中,經(jīng)常用于保存會(huì)員登錄狀態(tài)信息、購(gòu)物車(chē)、歷史記錄等場(chǎng)景。5.5.1將數(shù)據(jù)緩存到本地uni.SetStorage(OBJECT)以異步方式將數(shù)據(jù)存儲(chǔ)在本地緩存指定的key中。uni.setStorageSynC(KEY,DATA)以同步方式將數(shù)據(jù)存儲(chǔ)在本地緩存指定的key中。

將數(shù)據(jù)緩存到本地,不管是以同步方式還是以異步方式,都是通過(guò)key/value的形式存儲(chǔ)數(shù)據(jù)的,只不過(guò)以同步方式需要等本地緩存成功后,才可以繼續(xù)執(zhí)行下面的程序,而以異步方式則不需要等待本地緩存成功就可以繼續(xù)執(zhí)行下面的程序。在數(shù)據(jù)緩存比較耗時(shí)的情況下,可以使用異步方式進(jìn)行緩存,保證程序不用等待繼續(xù)執(zhí)行。5.5.1將數(shù)據(jù)緩存到本地參數(shù)名類(lèi)型必填說(shuō)明keyString是本地緩存中的指定的keydataAny是需要存儲(chǔ)的內(nèi)容,只支持原生類(lèi)型、及能夠通過(guò)JSON.stringify序列化的對(duì)象successFunction否接口調(diào)用成功的回調(diào)函數(shù)failFunction否接口調(diào)用失敗的回調(diào)函數(shù)completeFunction否接口調(diào)用結(jié)束的回調(diào)函數(shù)(調(diào)用成功、失敗都會(huì)執(zhí)行)uni.setStorage(OBJECT)參數(shù)說(shuō)明5.5.1將數(shù)據(jù)緩存到本地參數(shù)名類(lèi)型必填說(shuō)明keyString是本地緩存中的指定的keydataAny是需要存儲(chǔ)的內(nèi)容,只支持原生類(lèi)型、及能夠通過(guò)JSON.stringify序列化的對(duì)象uni.setStorageSync(OBJECT)參數(shù)說(shuō)明演示數(shù)據(jù)存儲(chǔ)異步存儲(chǔ)同步存儲(chǔ)5.5.2獲取本地緩存數(shù)據(jù)uni.getStorage(OBJECT):以異步方式從本地緩存中異步獲取指定key對(duì)應(yīng)的內(nèi)容。uni.getStorageSync(KEY):以同步方式從本地緩存中同步獲取指定key對(duì)應(yīng)的內(nèi)容。uni.getStorageInfo(OBJECT):以異步方式獲取本地所有key值集合。uni.getStorageInfoSync():以同步方式獲取本地所有key值集合。5.5.2獲取本地緩存數(shù)據(jù)uni.getStorage(OBJECT)使用異步方式從本地緩存中獲取指定key對(duì)應(yīng)的內(nèi)容參數(shù)名類(lèi)型必填說(shuō)明keyString是本地緩存中的指定的keysuccessFunction否接口調(diào)用成功的回調(diào)函數(shù),res為{data:key對(duì)應(yīng)的內(nèi)容}failFunction否接口調(diào)用失敗的回調(diào)函數(shù)completeFunction否接口調(diào)用結(jié)束的回調(diào)函數(shù)(調(diào)用成功、失敗都會(huì)執(zhí)行)onLoad(){//以異步方式獲取本地?cái)?shù)據(jù)uni.getStorage({key:'user',success:function(res){console.log(res);}})}示例代碼:uni.getStorage(OBJECT)參數(shù)說(shuō)明5.5.2獲取本地緩存數(shù)據(jù)uni.getStorageSync(KEY)是一個(gè)同步的接口,用來(lái)從本地緩存中同步獲取指定key對(duì)應(yīng)的內(nèi)容。onLoad(){

//以同步方式獲取本地?cái)?shù)據(jù)varuserSync=uni.getStorageSync('userSync');console.log(userSync);}示例代碼參數(shù)說(shuō)明:key為本地緩存中指定的key。5.5.2獲取本地緩存數(shù)據(jù)uni.getStorageInfo是以異步方式獲取key值集合,是獲取所有key的值,Object參數(shù)說(shuō)明如表所示。onLoad(){uni.getStorageInfo({success:function(res){console.log(res);}})}success返回參數(shù)說(shuō)明參數(shù)名類(lèi)型必填說(shuō)明successFunction是接口調(diào)用成功的回調(diào)函數(shù),返回見(jiàn)表failFunction否接口調(diào)用失敗的回調(diào)函數(shù)completeFunction否接口調(diào)用結(jié)束的回調(diào)函數(shù)(調(diào)用成功、失敗都會(huì)執(zhí)行)參數(shù)類(lèi)型說(shuō)明keysArray<String>當(dāng)前storage中所有的keycurrentSizenumber當(dāng)前占用的空間大小,單位為千字節(jié)limitSizenumber限制的空間大小,單位為千字節(jié)示例代碼:獲取到本地所有的key值后,根據(jù)該key值再調(diào)用uni.getStorage或uni.getStorageSync接口就可以獲取到本地?cái)?shù)據(jù)了。5.5.2獲取本地緩存數(shù)據(jù)uni.getStorageInfoSync是以同步方法來(lái)獲取當(dāng)前storage的相關(guān)信息,示例代碼:onLoad(){varstorage=uni.getStorageInfoSync();console.log(storage);}它和uni.getStorageInfo異步獲取storage返回的數(shù)據(jù)一樣都是所有的key值,然后根據(jù)key值再查找完整的數(shù)據(jù)。5.5.3清理本地緩存數(shù)據(jù)uni.removeStorage(OBJECT)用來(lái)異步從本地緩存中移除指定的key。onLoad(){

//異步移除key=user的數(shù)據(jù)uni.removeStorage({key:'user',success:function(res){console.log(res);},})}uni.removeStorageSync(OBJECT)用來(lái)同步從本地緩存中移除指定的keyonLoad(){

//同步移除key=userSync的數(shù)據(jù)

uni.removeStorageSync('userSync');}5.5.3清理本地緩存數(shù)據(jù)uni.clearStorage()和uni.clearStorageSync()用來(lái)清理本地所有緩存數(shù)據(jù),前者是以異步方式,后者是以同步方式。uni.clearStorage()try{uni.clearStorageSync()}catch(e){}演示數(shù)據(jù)存儲(chǔ)5.6路由API說(shuō)明Open-type屬性值uni.navigateTo(OBJECT)保留當(dāng)前頁(yè)面,跳轉(zhuǎn)到應(yīng)用內(nèi)的某個(gè)頁(yè)面,使用uni.navgateBack返回navigateuni.redirectTo(OBJECT)關(guān)閉當(dāng)前頁(yè)面,跳轉(zhuǎn)到應(yīng)用內(nèi)的某個(gè)頁(yè)面。redirectuni.switchTab(OBJECT)跳轉(zhuǎn)到tabBar頁(yè)面,并關(guān)閉其他所有非tabBar頁(yè)面。switchTabuni.reLaunch(OBJECT)關(guān)閉所有頁(yè)面,打開(kāi)到應(yīng)用內(nèi)的某個(gè)頁(yè)面。reLaunchuni.navigateBack(OBJECT)關(guān)閉當(dāng)前頁(yè)面,返回上一頁(yè)面或多級(jí)頁(yè)面。navigateBacknavigator組件的Open-type屬性的5種取值,分別對(duì)應(yīng)了5種不同的跳轉(zhuǎn)方式。路由API5.6路由uni.navigateTo(OBJECT)、uni.navigateBack(OBJECT)API的OBJECT參數(shù)說(shuō)明參數(shù)類(lèi)型必填默認(rèn)值說(shuō)明差異說(shuō)明urlString是

需要跳轉(zhuǎn)的應(yīng)用內(nèi)非tabBar的頁(yè)面的路徑uni.navigateTo中的參數(shù)deltaNumber否1返回的頁(yè)面數(shù),如果delta大于現(xiàn)有頁(yè)面數(shù),則返回到首頁(yè)uni.navigateBack的參數(shù)animationTypeString否pop-inAppanimationDurationNumber否300窗口動(dòng)畫(huà)持續(xù)時(shí)間,單位為msAppeventsObject否

頁(yè)面間通信接口,用于監(jiān)聽(tīng)被打開(kāi)頁(yè)面發(fā)送到當(dāng)前頁(yè)面的數(shù)據(jù)。2.8.9+開(kāi)始支持。uni.navigateTo的參數(shù)successFunction否

接口調(diào)用成功的回調(diào)函數(shù)

failFunction否

接口調(diào)用失敗的回調(diào)函數(shù)

completeFunction否

接口調(diào)用結(jié)束的回調(diào)函數(shù)(調(diào)用成功、失敗都會(huì)執(zhí)行)5.6路由uni.navigateTo(OBJECT)、uni.navigateBack(OBJECT)API的OBJECT參數(shù)說(shuō)明參數(shù)類(lèi)型必填說(shuō)明差異說(shuō)明urlString是需要跳轉(zhuǎn)的應(yīng)用內(nèi)非tabBar的頁(yè)面的路徑uni.switchTab的路徑不能帶參數(shù)successFunction否接口調(diào)用成功的回調(diào)函數(shù)

failFunction否接口調(diào)用失敗的回調(diào)函數(shù)

completeFunction否接口調(diào)用結(jié)束的回調(diào)函數(shù)(調(diào)用成功、失敗都會(huì)執(zhí)行)5.6路由注意:navigateTo,redirectTo只能打開(kāi)非tabBar頁(yè)面。頁(yè)面跳轉(zhuǎn)路徑有層級(jí)限制,不能無(wú)限制跳轉(zhuǎn)新頁(yè)面,微信小程序有10層限制。switchTab只能打開(kāi)tabBar頁(yè)面。reLaunch可以打開(kāi)任意頁(yè)面。頁(yè)面底部的tabBar由頁(yè)面決定,即只要是定義為tabBar的頁(yè)面,底部都有tabBar。不能在App.vue里面進(jìn)行頁(yè)面跳轉(zhuǎn)。H5端頁(yè)面刷新之后頁(yè)面棧會(huì)消失,此時(shí)navigateBack不能返回,如果一定要返回可以使用history.back()導(dǎo)航到瀏覽器的其他歷史記錄。演示頁(yè)面路由5.6.2數(shù)據(jù)傳遞uni.navigateTo、uni.redirectTo、uni.relaunch這3個(gè)路由API中OBJECT參數(shù)中url都可以攜帶參數(shù),如'path?key=value&key2=value2'。uni-app是在onLoad()生命周期函數(shù)中接受參數(shù)。onLoad()方法接受的參數(shù)為object類(lèi)型,會(huì)序列化上面頁(yè)面?zhèn)鬟f的參數(shù)。演示數(shù)據(jù)傳遞navigate.vueaccepData.vue運(yùn)行效果綜合案例:智云翻譯操作步驟初始配置1(1)在有道智云AI開(kāi)發(fā)平臺(tái)注冊(cè)賬號(hào)并登錄,點(diǎn)擊頭像進(jìn)入控制臺(tái),點(diǎn)擊“應(yīng)用總覽”頁(yè)面中的“創(chuàng)建應(yīng)用”,創(chuàng)建成功后,可以得到該應(yīng)用的應(yīng)用ID和應(yīng)用密匙(2)新建一個(gè)使用uni-ui項(xiàng)目的uni-app項(xiàng)目translate-demo(注意選擇vue2)。刪除pages下的index文件夾,新建三個(gè)頁(yè)面:翻譯頁(yè)面translate.vue、翻譯結(jié)果頁(yè)面result.vue、查看翻譯歷史頁(yè)面history.vue。參照第2.1節(jié)的內(nèi)容完成tabbar導(dǎo)航??缬蚺渲?打開(kāi)mani

溫馨提示

  • 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論