宅男在线永久免费观看网直播,亚洲欧洲日产国码无码久久99,野花社区在线观看视频,亚洲人交乣女bbw,一本一本久久a久久精品综合不卡

全部
常見(jiàn)問(wèn)題
產(chǎn)品動(dòng)態(tài)
精選推薦

從入門(mén)到精通:UniApp路由使用技巧全解析!

管理 管理 編輯 刪除

一、概述

在uniapp開(kāi)發(fā)中,路由是非常重要的一個(gè)方面,它可以實(shí)現(xiàn)頁(yè)面之間的跳轉(zhuǎn)和傳遞參數(shù)。本文將介紹uniapp中路由的使用技巧,并給出具體的代碼示例。

二、uniapp路由的基本使用

在uniapp中,路由的基本使用可以通過(guò)uni.navigateTo、uni.redirectTo、uni.reLaunch、uni.switchTab等API來(lái)進(jìn)行頁(yè)面跳轉(zhuǎn)。這些API的使用場(chǎng)景略有不同,具體使用取決于項(xiàng)目需求。

1.uni.navigateTo:用于打開(kāi)新頁(yè)面,并保留當(dāng)前頁(yè)面。適用于普通的頁(yè)面跳轉(zhuǎn)。

示例代碼:

uni.navigateTo({
 url: '/pages/detail/detail?id=1'
});

2.uni.redirectTo:用于關(guān)閉當(dāng)前頁(yè)面,并打開(kāi)新頁(yè)面。適用于不需要返回上一頁(yè)的頁(yè)面跳轉(zhuǎn)。

示例代碼:

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

3.uni.reLaunch:關(guān)閉所有頁(yè)面,打開(kāi)到應(yīng)用內(nèi)的某個(gè)頁(yè)面。適用于從其他平臺(tái)掃碼進(jìn)入小程序的場(chǎng)景。

示例代碼:

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

4.uni.switchTab:跳轉(zhuǎn)到tarBar頁(yè)面,并關(guān)閉其他所有非tarBar頁(yè)面。適用于底部導(dǎo)航欄頁(yè)面之間的跳轉(zhuǎn)。

示例代碼:

uni.switchTab({
 url: '/pages/home/home'
});

三、uniapp路由參數(shù)的傳遞

在uniapp中,可以通過(guò)URL參數(shù)的方式來(lái)進(jìn)行頁(yè)面之間的數(shù)據(jù)傳遞。

1.頁(yè)面之間傳遞參數(shù)在頁(yè)面A跳轉(zhuǎn)到頁(yè)面B時(shí),可以通過(guò)URL參數(shù)來(lái)傳遞數(shù)據(jù)。在A頁(yè)面的跳轉(zhuǎn)代碼中,通過(guò)拼接url的方式傳遞參數(shù):

uni.navigateTo({
 url: '/pages/detail/detail?id=' + id
});

2.在B頁(yè)面中,可以通過(guò)uni.$route.query來(lái)獲取參數(shù)值:

onLoad() {
    console.log(this.$route.query.id);
}

頁(yè)面返回時(shí)傳遞參數(shù)

在uniapp中,可以通過(guò)uni.navigateBack方法返回上一個(gè)頁(yè)面,并通過(guò)調(diào)用上一頁(yè)頁(yè)面的onBack方法傳遞參數(shù)。具體代碼如下:

3.在A頁(yè)面中,跳轉(zhuǎn)到B頁(yè)面時(shí),傳遞參數(shù),并注冊(cè)上一頁(yè)頁(yè)面的onBack方法:

uni.navigateTo({
 url: '/pages/detail/detail?id=' + id + '&callback=onBack'
});

4.在B頁(yè)面中,獲取參數(shù)值,并在頁(yè)面返回時(shí)調(diào)用上一頁(yè)頁(yè)面的onBack方法傳遞參數(shù):

methods: {
    goBack() {
        uni.navigateBack({
            delta: 1,
            success: () => {
                uni.getOpenerEventChannel().emit(this.asr_notify);
            }
        });
    }
}

5.在A頁(yè)面中,注冊(cè)onBack方法并接收參數(shù):

methods: {
    onBack(data) {
        console.log(data);
    }
}

四、uniapp路由攔截與權(quán)限控制

在開(kāi)發(fā)過(guò)程中,有時(shí)候需要對(duì)某些頁(yè)面進(jìn)行權(quán)限控制,以阻止未登錄用戶(hù)訪問(wèn)某些頁(yè)面。

在uniapp中,可以通過(guò)導(dǎo)航守衛(wèi)來(lái)實(shí)現(xiàn)路由攔截和權(quán)限控制。具體代碼如下:

1.創(chuàng)建全局路由攔截器,在main.js文件中:

// 全局路由攔截器
router.beforeEach((to, from, next) => {
 const token = uni.getStorageSync('token');
 if (to.meta.requiresAuth && !token) { // 判斷是否需要登錄才能查看頁(yè)面
     next('/pages/login/login');
 } else {
     next();
 }
});

2.在需要進(jìn)行權(quán)限控制的頁(yè)面配置路由元信息:

export default {
 meta: {
     requiresAuth: true // 需要登錄才能訪問(wèn)
 }
 // 省略其他代碼...
}

通過(guò)以上操作,可以實(shí)現(xiàn)對(duì)需要登錄才能訪問(wèn)的頁(yè)面進(jìn)行權(quán)限控制,未登錄用戶(hù)將被攔截并跳轉(zhuǎn)到登錄頁(yè)。

總結(jié):

本文介紹了uniapp中路由的基本使用方法、參數(shù)傳遞方式以及路由攔截與權(quán)限控制。通過(guò)合理的使用路由,可以實(shí)現(xiàn)頁(yè)面之間的跳轉(zhuǎn)和數(shù)據(jù)傳遞,提升應(yīng)用的用戶(hù)體驗(yàn)。

請(qǐng)登錄后查看

CRMEB-慕白寒窗雪 最后編輯于2024-01-02 10:56:00

快捷回復(fù)
回復(fù)
回復(fù)
回復(fù)({{post_count}}) {{!is_user ? '我的回復(fù)' :'全部回復(fù)'}}
排序 默認(rèn)正序 回復(fù)倒序 點(diǎn)贊倒序

{{item.user_info.nickname ? item.user_info.nickname : item.user_name}} LV.{{ item.user_info.bbs_level || item.bbs_level }}

作者 管理員 企業(yè)

{{item.floor}}# 同步到gitee 已同步到gitee {{item.is_suggest == 1? '取消推薦': '推薦'}}
{{item.is_suggest == 1? '取消推薦': '推薦'}}
沙發(fā) 板凳 地板 {{item.floor}}#
{{item.user_info.title || '暫無(wú)簡(jiǎn)介'}}
附件

{{itemf.name}}

{{item.created_at}}  {{item.ip_address}}
打賞
已打賞¥{{item.reward_price}}
{{item.like_count}}
{{item.showReply ? '取消回復(fù)' : '回復(fù)'}}
刪除
回復(fù)
回復(fù)

{{itemc.user_info.nickname}}

{{itemc.user_name}}

回復(fù) {{itemc.comment_user_info.nickname}}

附件

{{itemf.name}}

{{itemc.created_at}}
打賞
已打賞¥{{itemc.reward_price}}
{{itemc.like_count}}
{{itemc.showReply ? '取消回復(fù)' : '回復(fù)'}}
刪除
回復(fù)
回復(fù)
查看更多
打賞
已打賞¥{{reward_price}}
3670
{{like_count}}
{{collect_count}}
添加回復(fù) ({{post_count}})

相關(guān)推薦

快速安全登錄

使用微信掃碼登錄
{{item.label}} 加精
{{item.label}} {{item.label}} 板塊推薦 常見(jiàn)問(wèn)題 產(chǎn)品動(dòng)態(tài) 精選推薦 首頁(yè)頭條 首頁(yè)動(dòng)態(tài) 首頁(yè)推薦
取 消 確 定
回復(fù)
回復(fù)
問(wèn)題:
問(wèn)題自動(dòng)獲取的帖子內(nèi)容,不準(zhǔn)確時(shí)需要手動(dòng)修改. [獲取答案]
答案:
提交
bug 需求 取 消 確 定
打賞金額
當(dāng)前余額:¥{{rewardUserInfo.reward_price}}
{{item.price}}元
請(qǐng)輸入 0.1-{{reward_max_price}} 范圍內(nèi)的數(shù)值
打賞成功
¥{{price}}
完成 確認(rèn)打賞

微信登錄/注冊(cè)

切換手機(jī)號(hào)登錄

{{ bind_phone ? '綁定手機(jī)' : '手機(jī)登錄'}}

{{codeText}}
切換微信登錄/注冊(cè)
暫不綁定
CRMEB客服

CRMEB咨詢(xún)熱線 咨詢(xún)熱線

400-8888-794

微信掃碼咨詢(xún)

CRMEB開(kāi)源商城下載 源碼下載 CRMEB幫助文檔 幫助文檔
返回頂部 返回頂部
CRMEB客服