最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

微信小程序阻止頁面返回實例詳解(包滑動、自動返回鍵)

 更新時間:2023年06月01日 11:18:42   作者:奧特曼  
小程序如果在頁面內(nèi)進行復雜的界面設計,用戶進行返回操作會直接離開當前頁面,不符合用戶預期,下面這篇文章主要給大家介紹了關于微信小程序阻止頁面返回(包滑動、自動返回鍵)的相關資料,需要的朋友可以參考下

前言

這個場景還是挺有意思的,比如某多多,只要你點左上角的返回 好家伙,滿滿又 花不了 的優(yōu)惠券就來了,讓你擁有一種消費最劃算的感覺。

如果你的場景比較簡單,只是對左上角的返回進行監(jiān)聽,只需要關閉自帶的導航欄,手寫導航欄或用ui庫的寫好的導航欄就好了。然后給寫好的導航欄的返回按鈕添加一個返回的事件做自己想要實現(xiàn)的場景就好了。

一、自定義導航欄

自定義導航欄配置:

{
	"path": "pages/login/login",
	"style": {
+		"navigationStyle": "custom"
	}
}

二、 wx.enableAlertBeforeUnload

如果你的場景點擊返回時只用來提示一下用戶 類似于用一個showModel(提示框)的展示效果,可以使用wx.enableAlertBeforeUnload,只要一點擊左上角的返回就會觸發(fā)當前事件,如果點擊確定退出當前頁,如果點擊取消留在當前頁面。

onLoad(e) {
			uni.enableAlertBeforeUnload({
			    message: "返回上頁時彈出對話框",
			    success: function (res) {
			      console.log("點擊確認按鈕了:", res);
			    },
			    fail: function (errMsg) {
			      console.log("點擊取消按鈕了:", errMsg);
			    },
			 })
		},

三、page-container 

如果你的場景比較復雜,手機都會有自帶的滑動返回,例如ios的滑動返回,安卓的滑動返回和back返回鍵,就需要用到page-container,他的效果類似于彈窗的形式存在著。

<page-container :show="true"  :duration="false" :overlay="false">
    存放內(nèi)容
</page-container>

當點擊返回按鈕時 會先執(zhí)行把當前的page-container給隱藏掉,再次點擊返回時才能夠返回上一頁。

在正常邏輯下 如果想要優(yōu)惠券只彈出一次,只需要把page-container 放在外面 于內(nèi)容隔離開,當點擊關閉時先把page-container給隱藏掉,并不會觸發(fā)當前頁的返回,當關閉page-container時會有離開前的事件,只需要在離開前的事件中添加對應的顯示優(yōu)惠券邏輯即可。

<template>
	<view   >
		<scroll-view scroll-y="true" style="height: 100vh;" :scroll-top="top"  class="mainBox" @scroll="scroll">
			<view class="" v-for="item in 99">
					我是內(nèi)容
			</view>
	</scroll-view>
	<page-container :show="true"  :duration="false" :overlay="false" @beforeleave="beforeleave"></page-container>
	</view>
</template>
methods:{
	beforeleave(){
				uni.showModal({
					title:'彈出優(yōu)惠券邏輯'
				})
			},
}

 如果呢 你這個項目比較特別特別的惡心,只要你點擊左上角的返回我就不讓你出去,什么時候點擊我指定的返回你才夠出去,什么都得聽我的! 實現(xiàn)思路也是一直在原地進入當前頁面。好處就是我能知道你想要返回了,確定就是會有一個進入的加載效果。

完整代碼

<template>
	<page-container :show="isShow"  :duration="false" :overlay="false"  @beforeleave="beforeleave" @afterleave="afterleave"   >
		<scroll-view scroll-y="true" style="height: 100vh;" :scroll-top="top"  class="mainBox" @scroll="scroll">
			<view class="back" @click="back">
				指定返回按鈕
			</view>
			<view class="" v-for="item in 99">
				我是內(nèi)容
			</view>
		</view>
	</scroll-view>
	</page-container>
</template>
<script>
	export default {
		data() {
			return {
				isShow:true, 
				top:0,
				scrollTop:0,
			}
		},
		onLoad(e) {
			this.top = e.top
		},
		methods: {
			back(){
				this.isShow = false
				console.log('點擊返回了');
				uni.navigateBack()
			},
			beforeleave(){
				if(!this.isShow) return uni.navigateBack()
				console.log('點擊返回了');
				uni.redirectTo({
					url:`/pages/mine/test?top=${this.scrollTop}`,
					fail(err) {
						console.log(err);
					}
				})
			},
			// 需要在退出一次 否則退不出去
			afterleave(){
				if(!this.isShow) return uni.navigateBack()
			},
			// 記錄當前位置 下次進來時自動轉(zhuǎn)到剛才的位置
			scroll(e){
				this.scrollTop = e.target.scrollTop
			}
		},
	}
</script>

總結

到此這篇關于微信小程序阻止頁面返回(包滑動、自動返回鍵)的文章就介紹到這了,更多相關微信小程序阻止頁面返回內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • js的math中缺少的數(shù)學方法小結

    js的math中缺少的數(shù)學方法小結

    JavaScript?Math對象包含一些真正有用且強大的數(shù)學運算,但它缺乏大多數(shù)其他語言提供的許多重要運算,例如求和,乘積,奇數(shù)和偶數(shù)等等,本文就來介紹一下
    2023-08-08
  • js實現(xiàn)跟隨鼠標移動且?guī)шP閉功能的圖片廣告實例

    js實現(xiàn)跟隨鼠標移動且?guī)шP閉功能的圖片廣告實例

    這篇文章主要介紹了js實現(xiàn)跟隨鼠標移動且?guī)шP閉功能的圖片廣告,實例分析了javascript操作鼠標事件及html元素的相關技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-02-02
  • JavaScript表單驗證示例詳解

    JavaScript表單驗證示例詳解

    這篇文章主要為大家詳細介紹了JavaScript表單驗證示例,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-10-10
  • echarts 移動端豎著顯示效果實現(xiàn)

    echarts 移動端豎著顯示效果實現(xiàn)

    這篇文章主要為大家介紹了echarts 移動端豎著顯示效果實現(xiàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-07-07
  • Svelte?和?React的比較詳解(一)

    Svelte?和?React的比較詳解(一)

    在這篇文章中,我將Svelte?還是?React作了對比,不能以個人意見代表誰好誰壞。以及我發(fā)現(xiàn)使用這兩個框架的一些區(qū)別,感興趣的小伙伴可以參考閱讀
    2023-04-04
  • js DNA動態(tài)序列比對代碼

    js DNA動態(tài)序列比對代碼

    JavaScript動態(tài)序列比對代碼,隨便 寫著玩的,在網(wǎng)上見到用VC、VB寫的比較多,這個算法以前在高中課本上見到過,我只是用Js寫一下試試,或許還不是太準確。
    2010-07-07
  • 在element-ui的select下拉框加上滾動加載

    在element-ui的select下拉框加上滾動加載

    這篇文章主要介紹了在element-ui的select下拉框加上滾動加載,本文以以element-ui中的select為例,給大家介紹的非常詳細,需要的朋友可以參考下
    2019-04-04
  • JavaScript生成器函數(shù)Generator解決異步操作問題

    JavaScript生成器函數(shù)Generator解決異步操作問題

    這篇文章主要為大家介紹了JavaScript生成器函數(shù)Generator解決異步操作問題示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-10-10
  • Bootstrap CSS布局之表格

    Bootstrap CSS布局之表格

    這篇文章主要為大家詳細介紹了Bootstrap CSS布局之表格的相關資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-12-12
  • js FLASH幻燈片字符串中有連接符&的處理方法

    js FLASH幻燈片字符串中有連接符&的處理方法

    一般情況下我們在FLASH幻燈片字符串中有連接符時點擊鏈接就會不正常,造成鏈接中的參數(shù)丟失,那么就需要用encodeURIComponent來對鏈接地址進行編碼
    2012-03-03

最新評論

远安县| 汝州市| 定安县| 宜良县| 清河县| 教育| 筠连县| 手游| 科技| 海兴县| 萨迦县| 崇仁县| 淳安县| 屏东县| 北辰区| 达孜县| 皮山县| 鄯善县| 星子县| 金川县| 封丘县| 东丽区| 普格县| 息烽县| 屯留县| 高陵县| 苏尼特左旗| 黄大仙区| 仲巴县| 宜章县| 广河县| 安达市| 肥东县| 闻喜县| 离岛区| 靖宇县| 广昌县| 巧家县| 鲜城| 商丘市| 枣阳市|