React-Native-Navigation (WIX):如何更新底部标签的徽章计数?

Posted

技术标签:

【中文标题】React-Native-Navigation (WIX):如何更新底部标签的徽章计数?【英文标题】:React-Native-Navigation (WIX) : How do I update the badge count for a bottomTab? 【发布时间】:2019-01-01 18:04:01 【问题描述】:

我正在使用 Navigation.mergeOptions() 函数尝试更新第三个选项卡 (tabindex = 2) 的标记计数,但是标记计数没有更新。这是 setRoot 的原始布局对象的样子:


    root: 
        bottomTabs: 
            children: [
                
                    stack: 
                        children: [
                            
                                component: 
                                    name: 'navigation.main.Dispensaries',
                                ,
                            
                        ],
                        options: 
                            topBar,
                            bottomTab: NavStyles.tab('Dispensaries', dispensariesTabIcon),
                        
                    
                ,
                
                    stack: 
                        children: [
                            
                                component: 
                                    name: 'navigation.main.Orders',
                                ,
                            
                        ],
                        options: 
                            bottomTab: NavStyles.tab('My BudBuddy', myBudbuddyTabIcon),
                            topBar,
                        
                    
                ,
                
                    stack: 
                        children: [
                            
                                component: 
                                    name: 'navigation.main.Checkout',
                                ,
                            
                        ],
                        options: 
                            bottomTab: NavStyles.tab('Bag', bagTabIcon, badge),
                            topBar,
                        
                    
                ,
            ], options: 
                //topBar,
                bottomTabs: 
                    currentTabIndex: 0,
                ,
            ,
        ,
    

然后,在我的一个组件中,我这样做了,但它对徽章计数没有影响:

Navigation.mergeOptions(this.props.componentId, 
            bottomTabs: 
                children: [
                    , ,
                    
                        stack: 
                            options: 
                                bottomTab: 
                                    badge: '31',
                                ,
                            ,
                        ,
                    ,
                ],
            ,
        );

我很确定这是错误的,我什至尝试在上面的第一个代码块中复制原始布局对象,但徽章计数不同,但它什么也没做。有任何想法吗?谢谢!

【问题讨论】:

【参考方案1】:

Updating options for a specific tab

希望这会有所帮助。

【讨论】:

我认为您没有完全阅读我上面的问题。请注意,我已经在您的链接中使用了该功能。 对,但是您将某种布局结构传递给mergeOptions,而该方法需要一个简单的选项对象作为第二个参数。 是的,好点。因此,如果我放入一个带有属性bottomTab 的简单选项对象,其中包含一个包含属性badge 的对象(就像这里的示例:wix.github.io/react-native-navigation/v2/#/docs/…),它会更新我的第一个选项卡上的徽章(索引 = 0),但我无法更新第三个选项卡上的徽章计数(索引 = 2)。是否可以使用 mergeOptions 更新我的第三个选项卡上的徽章计数?如果是这样,你能给我看一个最小的例子吗? mergeOptions 接受 componentId 作为第一个参数,更新该组件所在的选项卡的 bade。例如,如果 componentId 表示在第二个选项卡中推送到堆栈的组件 - 那么第二个标签的徽章应该更新。 这解决了谢谢你指出来,因为它在文档中并不明显。它现在运行良好。

以上是关于React-Native-Navigation (WIX):如何更新底部标签的徽章计数?的主要内容,如果未能解决你的问题,请参考以下文章

React-native-navigation:goBack() 不起作用

react-native-navigation如何在`shouldComponentUpdate`中检测当前屏幕

React-native-navigation 选项卡栏中心圆圈图标

React-Native-Navigation (WIX):如何更新底部标签的徽章计数?

在bottomTab配置react-native-navigation中设置图标大小

使用 wix@react-native-navigation 运行 react-native 应用程序时出错