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中动态修改时点击按钮依然能调用事件,第一种是修改后即失效了。

希望能帮到你!

相关推荐
\xin12 小时前
pikachu自编exp,xss反射性get,post,存储型xss,dom,dom-x
前端·javascript·xss
是烟花哈17 小时前
【前端】React框架学习
前端·学习·react.js
qq43569470117 小时前
JavaWeb08
前端
2401_8784545318 小时前
html和css的复习(1)
前端·css·html
@PHARAOH19 小时前
WHAT - git worktree 概念
前端·git
IT_陈寒19 小时前
我竟然被JavaScript的隐式类型转换坑了三天!
前端·人工智能·后端
我亚索贼六丶19 小时前
二十六. AI基础概念之如何更好的使用AI
前端
小码哥_常19 小时前
安卓启动页Logo适配秘籍:告别“奇形怪状”的展示
前端
我亚索贼六丶19 小时前
二十五.Electron 初体验与进阶
前端
当时只道寻常19 小时前
像使用 Redis 一样操作 LocalStorage
前端·前端工程化