1. 程式人生 > 實用技巧 >[FE] uViewUI u-navbar 曲線解決 uni onNavigationBarButtonTap 的限制與失效

[FE] uViewUI u-navbar 曲線解決 uni onNavigationBarButtonTap 的限制與失效

uni 自帶的 navigation bar 對於普通的導航需求是夠用的,也允許onNavigationBarButtonTap 加點選事件。

但是會出現異常Bug,表現為在內部頁面一番操作後,再返回到主頁,主頁導航上的onNavigationBarButtonTap 點選無效。

你也能在社群看到這些問題似乎一直存在:https://ask.dcloud.net.cn/question/63407

另一方面是 onNavigationBarButtonTap 本身限制目前只支援 APP、H5。

一種解決方式是 使用 u-navbar,pages.json 中自定義導航設定,區域性如下:

{
    
"pages": [ { "path": "pages/index/index", "style": { "navigationStyle": "custom" , "navigationBarTextStyle": "white" } }
] }

然後在 vue 頁面中使用 u-navbar,元件不帶有事件,但是我們可以在外包一層 <view @click='xx'> 加上 click 事件來解決。

<
view @click='navbarTap'> <u-navbar :is-back="false" :border-bottom="false" :background="backgroundColor" :title="navbarTitle" title-width="320rpx" title-color="white" > </u-navbar> </view>

我們也不再是使用uni.setNavigationBarTitle 來設定導航文字,賦值元件上使用的變數就可以了。

Link:https://www.cnblogs.com/farwish/p/14128464.html