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

希望能帮到你!

相关推荐
yingyima12 小时前
Go 语言正则表达式速查手册:30 分钟掌握核心语法与实战技巧
前端
大蝴蝶博努奇a12 小时前
使用ChatGPT 解决各类代码报错
前端
胡志辉12 小时前
深入浅出 call、apply、bind
前端·javascript·后端
iccb101313 小时前
5年,一个程序员是如何把私有化在线客服系统做到第一名的
前端·后端·github
假如让我当三天老蒯13 小时前
回归基本功:Map/Set 与 WeakMap/WeakSet 的区别
前端·面试
IT乐手13 小时前
48队都装不下你|国足第24次让全世界失望
前端
SoaringHeart14 小时前
Flutter最佳实践:IM聊天文字链接自动识别跳转
前端·flutter
掘金一周15 小时前
企业中要做智能体,最佳的方案是什么? | 沸点周刊 6.18
前端·人工智能·ai编程
Darling噜啦啦15 小时前
CSS 3D 变换与 Flex 布局实战:从零打造旋转立方体
前端·css
十九画生15 小时前
parentID ``` JavaScript 是区分大小写的,所以这两个不是同一个字段。 第二,`parent` 没有声明。 应该先写: `
javascript