小程序模板網(wǎng)

微信小程序獲取當(dāng)前頁面路徑及參數(shù)封裝

發(fā)布時(shí)間:2021-06-24 08:50 所屬欄目:小程序開發(fā)教程

小程序獲取當(dāng)前頁面
在小程序中,所有頁面的路由都由框架統(tǒng)一管理。
框架以棧的形式維護(hù)了當(dāng)前的所有頁面。

getCurrentPages() 函數(shù)用于獲取當(dāng)前頁面棧的實(shí)例,以數(shù)組形式按棧的順序給出,第一個(gè)元素為首頁,最后一個(gè)元素為當(dāng)前頁面。
注意:
1.不要嘗試修改頁面棧,會(huì)導(dǎo)致路由以及頁面狀態(tài)錯(cuò)誤。
2.不要在 App.onLaunch 的時(shí)候調(diào)用 getCurrentPages(),此時(shí) page 還沒有生成。
 

export function getCurrentPageUrl() {
  const pages = getCurrentPages()
  const currentPage = pages[pages.length - 1]
  const url = `/${currentPage.route}`
  return url
}

小程序獲取當(dāng)前頁面路徑及參數(shù)

export function getCurrentPageUrlWithArgs() {
  const pages = getCurrentPages()
  const currentPage = pages[pages.length - 1]
  const url = currentPage.route
  const options = currentPage.options
  let urlWithArgs = `/${url}?`
  for (let key in options) {
    const value = options[key]
    urlWithArgs += `${key}=${value}&`
  }
  urlWithArgs = urlWithArgs.substring(0, urlWithArgs.length - 1)
  return urlWithArgs
}

由此可推,獲取上一個(gè)頁面 則是pages.lenght-2, 封到工具類里util.js非常實(shí)用


易優(yōu)小程序(企業(yè)版)+靈活api+前后代碼開源 碼云倉庫:starfork
本文地址:http://22321a.com/wxmini/doc/course/26721.html 復(fù)制鏈接 如需定制請(qǐng)聯(lián)系易優(yōu)客服咨詢:800182392 點(diǎn)擊咨詢
QQ在線咨詢