Uniapp中關閉當前頁面的多種方式

一、uniapp關閉當前頁面跳轉

在uniapp中,我們可以使用uni.navigateTo()方法實現關閉當前頁面並打開新的頁面。這種方法可以實現頁面之間的跳轉。

uni.navigateTo({
  url: '/pages/index/index'
});

以上的代碼會關閉當前頁面並跳轉到pages文件夾下的index頁面。

二、uniapp關閉頁面進入新頁面

如果需要關閉當前頁面並進入新的頁面,我們可以使用uni.redirectTo()方法。

uni.redirectTo({
  url: '/pages/index/index'
});

以上的代碼會關閉當前頁面並進入pages文件夾下的index頁面。

三、uniapp關閉當前頁面,打開新

如果我們需要在關閉當前頁面後打開新的頁面,我們可以使用uni.reLaunch()方法。

uni.reLaunch({
  url: '/pages/index/index'
});

以上的代碼會關閉所有頁面再打開pages文件夾下的index頁面。

四、layui關閉當前頁面

uniapp可以使用uni.navigateBack()方法實現關閉當前頁面。但是如果需要在uniapp中使用layui來關閉當前頁面,我們可以使用parent.layer.closeAll()方法實現。

parent.layer.closeAll();

以上的代碼會關閉當前的layui窗口。

五、uniapp關閉頁面回彈

如果需要在關閉當前頁面的同時回傳一些數據,我們可以使用uni.navigateBack()方法並傳入一個參數。

//關閉當前頁面並回傳數據
uni.navigateBack({
  delta: 1,
  success: function() {
    uni.$emit('refresh');
  }
})

以上的代碼會關閉當前頁面並回傳數據,並通過uni.$emit()方法觸發refresh事件。

六、uniapp關閉指定的頁面

如果需要關閉指定的頁面,我們可以先使用uni.getCurrentPages()方法獲取當前所有的頁面,然後使用page對象的route屬性匹配需要關閉的頁面,最後調用page對象的方法關閉頁面。

var pages = getCurrentPages();
for (var i = 0; i < pages.length; i++) {
  if (pages[i].route == "pages/index/index") {
    var page = pages[i]; //獲取需要關閉的頁面
    break;
  }
}
page.onUnload();

以上的代碼會關閉pages文件夾下的index頁面。

七、uniapp獲取當前頁面

如果需要獲取當前的頁面對象,我們可以先使用uni.getCurrentPages()方法獲取當前所有的頁面,然後使用數組的pop()方法獲取最後一個頁面,即為當前頁面對象。

//獲取當前的頁面對象
var pages = getCurrentPages();
var currentPage = pages[pages.length - 1];

以上的代碼會獲取當前的頁面對象。

八、uniapp關閉頁面丟失緩存

如果需要在關閉頁面的同時清空緩存,我們可以使用uni.clearStorage()方法。

//清空緩存並關閉當前頁面
uni.clearStorage({
  success: function() {
    uni.navigateBack({
      delta: 1
    })
  }
})

以上的代碼會成功清空緩存並關閉當前頁面。

九、uniapp頁面關閉的事件

如果需要在頁面關閉時觸發一些事件,我們可以使用onUnload()方法來監聽頁面關閉事件。

methods: {
  onUnload: function() {
    uni.$emit('close');
  }
}

以上的代碼會在頁面關閉時觸發uni.$emit()方法,發送close事件。

十、uniapp取消啟動頁選取

如果我們需要在uniapp啟動時取消啟動頁選取,我們可以在manifest.json文件中配置

"app": {
  "launch_path": "/pages/index/index",
  "subpackages": [],
  "globalStyle": {
    "navigationBarTextStyle": "black",
    "navigationBarTitleText": "WeChat",
    "navigationBarBackgroundColor": "#F8F8F8",
    "backgroundColor": "#F8F8F8"
  },
  "pages": [
    {
      "path": "pages/index/index",
      "style": {}
    }
  ],
  "tabBar": {}
}, 
"page": {
    "backgroundTextStyle": "light",
    "navigationBarBackgroundColor": "#fff",
    "navigationBarTitleText": "xxx",
    "navigationBarTextStyle": "black"
  },
  "permission": {
    "scope.userLocation": {
      "desc": "獲取當前位置"
    }
  },
  "noPromiseAPI": [
    "createSelectorQuery"
  ],
  "preloadRule": {
    "pagePath": "/pages/index/index",
    "network": "all",
    "packages": []
  },
  "window": {
    "backgroundTextStyle": "light",
    "navigationBarBackgroundColor": "#fff",
    "navigationBarTitleText": "xxx",
    "navigationBarTextStyle": "black"
  },
  "networkTimeout": {
    "request": 10000,
    "downloadFile": 10000
  },
  "tabBar": {
    "backgroundColor": "#fafafa",
    "borderStyle": "white",
    "color": "#808080",
    "selectedColor": "#1296db",
    "list": [
      {
        "pagePath": "pages/index/index",
        "iconPath": "static/img/home.png",
        "selectedIconPath": "static/img/home-active.png",
        "text": "首頁",
        "badge": {
          "type": "none",
          "text": ""
        }
      }
    ]
  },
  "debug": true,
  "resizable": true,
  "subPackages": []
}

以上的代碼會取消啟動頁選取。

原創文章,作者:QKVUO,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/331865.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
QKVUO的頭像QKVUO
上一篇 2025-01-20 14:10
下一篇 2025-01-20 14:10

相關推薦

  • Python返回數組:一次性搞定多種數據類型

    Python是一種多用途的高級編程語言,具有高效性和易讀性的特點,因此被廣泛應用於數據科學、機器學習、Web開發、遊戲開發等各個領域。其中,Python返回數組也是一項非常強大的功…

    編程 2025-04-29
  • 打包後頁面空白的解決方案

    當我們在調試階段時,我們的app可能看起來完美無缺,但當我們進行打包時,在運行app時,我們可能會遇到白屏或空白的問題。在這篇文章中,我們將探討如何解決這種問題。 一、檢查文件路徑…

    編程 2025-04-29
  • Python緩存圖片的處理方式

    本文將從多個方面詳細闡述Python緩存圖片的處理方式,包括緩存原理、緩存框架、緩存策略、緩存更新和緩存清除等方面。 一、緩存原理 緩存是一種提高應用程序性能的技術,在網絡應用中流…

    編程 2025-04-29
  • Python獲取當前日期的多種方法

    本文介紹如何使用Python獲取當前日期,並提供了多種方法,包括使用datetime模塊、time模塊以及第三方庫dateutil等。讓我們一步一步來看。 一、使用datetime…

    編程 2025-04-29
  • Python生成隨機數的多種方法

    本文將從以下幾個方面詳細介紹如何使用Python生成隨機數。 一、random模塊的使用 Python內置的random模塊能夠生成偽隨機數,使用該模塊,可以生成隨機數、隨機整數等…

    編程 2025-04-29
  • Python操作Web頁面

    本文將從多個方面詳細介紹Python操作Web頁面的技巧、方法和注意事項。 一、安裝必要的庫 在Python中操作Web頁面,需要用到一些第三方庫。 pip install req…

    編程 2025-04-28
  • Python在線編輯器的優勢與實現方式

    Python在線編輯器是Python語言愛好者的重要工具之一,它可以讓用戶方便快捷的在線編碼、調試和分享代碼,無需在本地安裝Python環境。本文將從多個方面對Python在線編輯…

    編程 2025-04-28
  • Java表單提交方式

    Java表單提交有兩種方式,分別是get和post。下面我們將從以下幾個方面詳細闡述這兩種方式。 一、get方式 1、什麼是get方式 在get方式下,表單的數據會以查詢字符串的形…

    編程 2025-04-27
  • 用Pythonic的方式編寫高效代碼

    Pythonic是一種編程哲學,它強調Python編程風格的簡單、清晰、優雅和明確。Python應該描述為一種語言而不是一種編程語言。Pythonic的編程方式不僅可以使我們在編碼…

    編程 2025-04-27
  • Java多版本支持實現方式

    本文將從以下幾個方面闡述如何實現Java多版本支持,並給出可行的代碼示例。 一、多版本Java環境概述 Java是一門跨平台的編程語言,但是在不同的應用場景下,可能需要使用不同版本…

    編程 2025-04-27

發表回復

登錄後才能評論