uniapp动态自定义导航栏,动态修改后无法再次点击的解决方案

如果你的写法是这样:

这种方式在动态修改后 ,再次点击按钮,按钮事件无法正常回调

javascript 复制代码
// #ifdef APP-PLUS

        var pages = getCurrentPages();

        var page = pages[pages.length - 1];

        var currentWebview = page.$getAppWebview();

        var tn = currentWebview.getStyle().titleNView;

        tn.buttons[0].text = "+";

        currentWebview.setStyle({

          titleNView: tn,

        });

 // #endif

请把它改为以下方式

这种方式在动态修改后依然可以继续使用

javascript 复制代码
// #ifdef APP-PLUS  

var webView = this.$mp.page.$getAppWebview();  

// 修改buttons  
// index: 按钮索引

webView.setTitleNViewButtonStyle(0, {  
    text: 'hello',  
});  

// #endif

这种方式 在进入页面mounted中动态修改时点击按钮依然能调用事件,第一种是修改后即失效了。

希望能帮到你!

相关推荐
天若有情6733 分钟前
反向封神!C++ 全局单例不避反用,实现无锁多线程函数独占访问
java·javascript·c++
张风捷特烈4 分钟前
状态管理大乱斗#02 | Bloc 源码全面评析
android·前端·flutter
将心ONE39 分钟前
pathlib Path函数的使用
java·linux·前端
lingzhilab40 分钟前
零知派——ESP32-S3 AI 小智 使用 Preferences NVS 实现Web配网持久化
前端
阿亮爱学代码44 分钟前
日期与滚动视图
java·前端·scrollview
欧米欧1 小时前
STRING的底层实现
前端·c++·算法
2301_814809861 小时前
踩坑实战pywebview:用 Python + Web 技术打造轻量级桌面应用
开发语言·前端·python
LIO1 小时前
Vue 3 实战——搜索框检索高亮的优雅实现
前端·vue.js
_thought1 小时前
踩坑记录:Vue Devtools(Vue2版)在火狐浏览器上,未在控制台显示
前端·javascript·vue.js
pancakenut1 小时前
从盒模型到画布:以mapbox为例
前端·canvas