成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

〔開(kāi)發(fā)系列〕一次關(guān)于小程序開(kāi)發(fā)的深度總結(jié)

Bryan / 2912人閱讀

摘要:一路由跳轉(zhuǎn)需求如何獲取當(dāng)前頁(yè)面的上一個(gè)頁(yè)面場(chǎng)景用于判斷返回哪一個(gè)頁(yè)面的時(shí)候使用當(dāng)前頁(yè)上一個(gè)頁(yè)面封裝返回上一個(gè)頁(yè)面的方法封裝返回上一個(gè)頁(yè)面的方法判斷上一個(gè)頁(yè)面然后返回上一個(gè)頁(yè)面發(fā)布頁(yè)或者訂單頁(yè)上一個(gè)頁(yè)面調(diào)用方法如何返回上上個(gè)頁(yè)面返回上一

一 路由跳轉(zhuǎn)

需求:如何獲取當(dāng)前頁(yè)面的上一個(gè)頁(yè)面
場(chǎng)景:用于判斷返回哪一個(gè)頁(yè)面的時(shí)候使用

const pages = getCurrentPages();
const Page = pages[pages.length - 1];//當(dāng)前頁(yè)
const prevPage = pages[pages.length - 2];  //上一個(gè)頁(yè)面

1. 封裝返回上一個(gè)頁(yè)面的方法

// 封裝返回上一個(gè)頁(yè)面的方法:
export function navigateBackByPage() {
    // 判斷上一個(gè)頁(yè)面 然后返回上一個(gè)頁(yè)面: 發(fā)布頁(yè)或者訂單頁(yè)
    const pages = getCurrentPages();
    const prevPage = pages[pages.length - 2];  //上一個(gè)頁(yè)面
    if (prevPage) {
        wx.navigateBack();
    }
}
// 調(diào)用方法
navigateBackByPage();

2. 如何返回上上個(gè)頁(yè)面

wx.navigateBack({
 delta: 2
})

3. 返回上一頁(yè)的時(shí)候把當(dāng)前頁(yè)的數(shù)據(jù)傳遞會(huì)上一個(gè)頁(yè)面

const pages = getCurrentPages();
const prevPage = pages[pages.length - 2]; //上一個(gè)頁(yè)面
// 直接調(diào)用上一個(gè)頁(yè)面的setData()方法,把數(shù)據(jù)存到上一個(gè)頁(yè)面中去
prevPage.setData({
   orderId: orderId
});
wx.navigateBack();
二 列表頁(yè)傳遞id獲取詳情頁(yè)數(shù)據(jù)
// 01 遍歷列表頁(yè) 獲取每一項(xiàng)item的id 綁定到data屬性中

     {{item.title}}
 
// 02 列表頁(yè) 通過(guò)事件和參數(shù)傳遞id
toOrderDetail(e) {
   const id = e.currentTarget.dataset.id;
   wx.navigateTo({
      url:"order-detail/order-detail?id=" + id
   })
}

// 03 詳情頁(yè) 在onload中間中拿到URL傳遞過(guò)來(lái)的參數(shù)id 請(qǐng)求詳情頁(yè)接口 拼接id參數(shù)
onLoad(option) {
    const id = option.id;
    const detailApi = "http://192.168.1.142:8096/app/FindOrder/findOrderById?orderId=" + id
      發(fā)起請(qǐng)求···
}
三 動(dòng)態(tài)設(shè)置頁(yè)面頂部導(dǎo)航欄標(biāo)題

說(shuō)明

01 onload中不能設(shè)置,因?yàn)閛nload過(guò)程中頁(yè)面并沒(méi)有生成,所以不能操作UI,onShow渲染頁(yè)面只是一瞬間,也不能展示UI,js中操作UI和設(shè)置展示UI,只能用onReady,onLoad和onShow用來(lái)處理數(shù)據(jù)請(qǐng)求,處理業(yè)務(wù)邏輯
02 (重點(diǎn)思路)在onLoad獲取數(shù)據(jù),傳遞到data;onReady使用data中的數(shù)據(jù)渲染導(dǎo)航
// 01 數(shù)據(jù)初始化
data:{
  navigationTitle:""
}
// 02 在onLoad中獲取列表頁(yè)js傳遞過(guò)來(lái)的參數(shù):
// 場(chǎng)景一:列表頁(yè)傳遞數(shù)據(jù)給詳情頁(yè)
// 場(chǎng)景一:直接請(qǐng)求接口獲取數(shù)據(jù),如果情面有多種狀態(tài),通過(guò)不同狀態(tài)動(dòng)態(tài)設(shè)置導(dǎo)航
onLoad(option) {
   const title = option.title;
   this.setData({
     navigationTitle:title
   })
}
// 03 需要在onReady生命周期中設(shè)置導(dǎo)航條:
onReady() {
   wx.setNavigationBarTitle({
      title:this.data.navigetionTitle
   })
}
四 跨頁(yè)全局傳遞數(shù)據(jù)的兩種方法

場(chǎng)景:實(shí)時(shí)數(shù)據(jù)傳遞

通過(guò)app.js中的全局變量globalData:{ },當(dāng)前頁(yè)的數(shù)據(jù)賦值給全局變量,另一個(gè)頁(yè)面實(shí)時(shí)獲取全局變量的值

// 頁(yè)面a 
app.globalData.workTypeId= workTypeId;
// 頁(yè)面b
const workTypeId= app.globalData.workTypeId

場(chǎng)景:從持久化數(shù)據(jù)中獲取數(shù)據(jù)

通過(guò)緩存來(lái)緩存數(shù)據(jù) 在任意頁(yè)面獲取

wx.setStorageSync("userInfoLogin", userInfoLogin); // 登陸后緩存用戶userId
// 封裝獲取id的方法
export function getStorageUserId() {
    const userInfoLogin = wx.getStorageSync("userInfoLogin");
    return userInfoLogin.id;
}
// 調(diào)用
const userId getStorageUserId()

持續(xù)更新中···

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/114217.html

相關(guān)文章

  • 開(kāi)發(fā)系列一次關(guān)于小程開(kāi)發(fā)深度總結(jié)

    摘要:一路由跳轉(zhuǎn)需求如何獲取當(dāng)前頁(yè)面的上一個(gè)頁(yè)面場(chǎng)景用于判斷返回哪一個(gè)頁(yè)面的時(shí)候使用當(dāng)前頁(yè)上一個(gè)頁(yè)面封裝返回上一個(gè)頁(yè)面的方法封裝返回上一個(gè)頁(yè)面的方法判斷上一個(gè)頁(yè)面然后返回上一個(gè)頁(yè)面發(fā)布頁(yè)或者訂單頁(yè)上一個(gè)頁(yè)面調(diào)用方法如何返回上上個(gè)頁(yè)面返回上一 一 路由跳轉(zhuǎn) 需求:如何獲取當(dāng)前頁(yè)面的上一個(gè)頁(yè)面場(chǎng)景:用于判斷返回哪一個(gè)頁(yè)面的時(shí)候使用 const pages = getCurrentPages();...

    Godtoy 評(píng)論0 收藏0
  • 前端資源系列(3)-微信小程開(kāi)發(fā)資源匯總

    摘要:微信小程序應(yīng)用號(hào)開(kāi)發(fā)資源匯總文檔工具教程代碼插件組件文檔從搭建一個(gè)微信小程序開(kāi)始小程序開(kāi)發(fā)文檔小程序設(shè)計(jì)指南工具小程序開(kāi)發(fā)者工具官方支持微信小程序?qū)崟r(shí)預(yù)覽的支持的微信小程序組件化開(kāi)發(fā)框架轉(zhuǎn)在線工具小程序云端增強(qiáng)社區(qū)微信小程序 微信(小程序or應(yīng)用號(hào))開(kāi)發(fā)資源匯總-文檔-工具-教程-代碼-插件-組件 文檔 從搭建一個(gè)微信小程序開(kāi)始 小程序開(kāi)發(fā)文檔 小程序設(shè)計(jì)指南 工具 小程序開(kāi)發(fā)者...

    paney129 評(píng)論0 收藏0
  • 架構(gòu) - 收藏集 - 掘金

    摘要:淺談秒殺系統(tǒng)架構(gòu)設(shè)計(jì)后端掘金秒殺是電子商務(wù)網(wǎng)站常見(jiàn)的一種營(yíng)銷手段。這兩個(gè)項(xiàng)目白話網(wǎng)站架構(gòu)演進(jìn)后端掘金這是白話系列的文章。 淺談秒殺系統(tǒng)架構(gòu)設(shè)計(jì) - 后端 - 掘金秒殺是電子商務(wù)網(wǎng)站常見(jiàn)的一種營(yíng)銷手段。 不要整個(gè)系統(tǒng)宕機(jī)。 即使系統(tǒng)故障,也不要將錯(cuò)誤數(shù)據(jù)展示出來(lái)。 盡量保持公平公正。 實(shí)現(xiàn)效果 秒殺開(kāi)始前,搶購(gòu)按鈕為活動(dòng)未開(kāi)始。 秒殺開(kāi)始時(shí),搶購(gòu)按鈕可以點(diǎn)擊下單。 秒殺結(jié)束后,按鈕按鈕變...

    Riddler 評(píng)論0 收藏0
  • Java 初學(xué)者做第一個(gè)微信小程總結(jié)--關(guān)于Java基礎(chǔ)

    摘要:官方資料微信公眾平臺(tái)注冊(cè)小程序。官網(wǎng)開(kāi)發(fā)文檔社區(qū)開(kāi)發(fā)工具部署微信小程序微信小程序本身不需要部署,在微信開(kāi)發(fā)工具中直接上傳代碼就行。 為什么 學(xué)習(xí) Java 三年,目前已經(jīng)工作了2年,因?yàn)樽詫W(xué),基礎(chǔ)差,所以打算年末總結(jié)一下常見(jiàn)的基礎(chǔ)知識(shí)和面試點(diǎn); 也可以通過(guò)獨(dú)立做一個(gè)項(xiàng)目整合自己工作期間學(xué)習(xí)的知識(shí),加深印象。 但是想著回家或是平時(shí)手機(jī)用的多,做一款A(yù)PP和小程序很方便查看。 項(xiàng)目展示 本...

    mudiyouyou 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<