在嘗試小程序開(kāi)發(fā)時(shí),tabBar這個(gè)是個(gè)非常常見(jiàn)的組件,但是今天在進(jìn)行開(kāi)發(fā)時(shí),設(shè)置了TabBarb并沒(méi)有顯示,被這個(gè)問(wèn)題困擾了近半小時(shí),現(xiàn)在將排查問(wèn)題后所得到的經(jīng)驗(yàn)記錄下來(lái)。
首先 如果tabBar不顯示,要排查所指向的頁(yè)面是否進(jìn)行了頁(yè)面注冊(cè)。如果沒(méi)有注冊(cè)的話,頁(yè)面是找不到的。
其次 要確保路徑的拼寫(xiě)正確,不知道為什么使用的Windows平臺(tái)的微信開(kāi)發(fā)工具,在設(shè)置tabBar的list時(shí),并沒(méi)有代碼提示,所以只能自己拼寫(xiě)路徑全稱,這個(gè)時(shí)候一定要注意拼寫(xiě)的正確性,否則頁(yè)面加載后,tabBar是找不到的,但是找不到 Console也不會(huì)報(bào)任何的錯(cuò)誤,所以千萬(wàn)要注意路徑的拼寫(xiě),就像我 在設(shè)置list 的 pagePath 屬性時(shí),將 “Component” 寫(xiě)出了“Componnet”
最后,在頁(yè)面路徑確保正確的前提下,tabBar還是沒(méi)有顯示出來(lái),嘗試了好多次,最后找到原因,因?yàn)橹笆亲鯝ndroid的,而Android中,也有一個(gè)類似的組件是 TabHost, TabHost包含在一個(gè)Activity中,包括指向的Activity(假設(shè)是3個(gè)Activity),共4個(gè)Activity,但是在微信小程序中,如果按照這樣的模式,即一個(gè)頁(yè)面包含三個(gè)頁(yè)面的話,那么很抱歉,tabBar是不能正常顯示的,在微信小程序中啟動(dòng)頁(yè)面一定要包含在tabBar中,并且啟動(dòng)頁(yè)必須是tabBar的list屬性中的第一個(gè)元素,才能正常顯示,Android的同學(xué)很容易在這個(gè)地方糾結(jié)。
例如