本文鏈接:https://blog.csdn.net/qq_37818728/article/details/86482453
官方的開(kāi)發(fā)者文檔中對(duì)于兩者的比較僅僅為是否和tabBar相互連接凝危,簡(jiǎn)單的來(lái)講就是:
redirectTo:關(guān)閉當(dāng)前頁(yè)(卸載),跳轉(zhuǎn)到指定頁(yè)
navigateTo:保留當(dāng)前頁(yè)(隱藏)晨逝,跳轉(zhuǎn)到指定頁(yè)
switchTap:只能用于跳轉(zhuǎn)到tabbar頁(yè)面蛾默,并關(guān)閉其他非tabbar頁(yè)面,tabbar之間做切換
常見(jiàn)的會(huì)出現(xiàn)的問(wèn)題:
(1)因?yàn)閎indtap名字的問(wèn)題導(dǎo)致的無(wú)法進(jìn)行正常的跳轉(zhuǎn)(解決方式:只要更改一個(gè)名字即可)
(2)路徑和tabber中的沖突,而不能使用switchtab(解決方案:核對(duì)tabber中的其他設(shè)置頁(yè)的list項(xiàng)目中的路徑中是否有沖突捉貌,如果存在的話(huà)則不能實(shí)現(xiàn)跳轉(zhuǎn))
因?yàn)閣x.switchTab是唯一能跳轉(zhuǎn)到 tabBar 頁(yè)面支鸡,并關(guān)閉其他所有非 tabBar 頁(yè)面(意思是說(shuō)其他幾個(gè)wx.設(shè)置跳轉(zhuǎn)時(shí),如果app.json的tabBar中的list中也設(shè)置的相同的跳轉(zhuǎn)路徑時(shí),跳轉(zhuǎn)無(wú)效.而wx.switchTab卻只能設(shè)置tabBar相同的路徑)對(duì)應(yīng)的綁定事件和對(duì)應(yīng)的跳轉(zhuǎn)路徑),此時(shí)相對(duì)應(yīng)的設(shè)置成wx.navigateTo即可完成跳轉(zhuǎn)
(3)補(bǔ)充:小編在寫(xiě)代碼的過(guò)程中發(fā)現(xiàn)的問(wèn)題趁窃,刪除掉了對(duì)應(yīng)tab頁(yè)面的list的各個(gè)路徑相關(guān)的問(wèn)題牧挣,前提是app.json中存在index路徑給定一個(gè)bindtap的綁定事件,在對(duì)應(yīng)的indexj.s文件中設(shè)置wx.switchTab的路徑為tab中存在的路徑如下所示醒陆,用switchTab點(diǎn)擊觸發(fā)事件之后瀑构,沒(méi)有報(bào)錯(cuò),也沒(méi)有明顯提示刨摩,頁(yè)面不能跳轉(zhuǎn)寺晌,換為 (navigateTo)之后成功跳轉(zhuǎn),
綜上所述:
注意switchTab只能跳轉(zhuǎn)到帶有tab的頁(yè)面澡刹,不能跳轉(zhuǎn)到不帶tab的頁(yè)面呻征!跳轉(zhuǎn)不帶tab的頁(yè)面還是需要使用redirect或者navigate!所以罢浇,如果如果你的post頁(yè)面還沒(méi)有加入tab選項(xiàng)卡陆赋,請(qǐng)依然使用redirect或者navigate!