【问题标题】:Setting value of badge to 0 after opening toggle打开切换后将徽章的值设置为0
【发布时间】:2020-05-10 13:03:06
【问题描述】:

我正在开发反应聊天小部件,在此我可以获取我在徽章中收到的新消息的计数,但我想在单击隐藏按钮后清除批处理值

 export default class App extends React.Component
{
   constructor(props)
   {
      state = {
        count:0
      }
   }
}

用于增加值

this.setState((old_state)=>{
    let new_count = ++old_state.count;
    return { count: new_count }

})

内部渲染函数badge={this.state.count}

启动器组件看起来像这样

const Launcher = ({ toggle, chatOpened, badge, bgcolor }) =>
  <button type="button" style={{backgroundColor : bgcolor}} className={chatOpened ? 'rcw-launcher rcw-hide-sm' : 'rcw-launcher'} onClick={toggle}>
    {chatOpened ?  
    <img src={close} className="rcw-close-launcher" alt="" />:
     <React.Fragment><Badge badge={badge} /><img src={openLauncher} className="rcw-open-launcher" alt="" /></React.Fragment>
    }
  </button>;

我无法理解在阅读一次消息后如何获取值。

【问题讨论】:

    标签: reactjs react-redux jsx


    【解决方案1】:

    当 chatOpened 为真时,将状态计数设置为 0。或者将 0 传递给徽章计数;

    【讨论】:

    • 感谢您的帮助,但我正在寻找一种情况,即在阅读新消息后,如果我关闭聊天,它也不应该向我显示徽章
    猜你喜欢
    • 2015-06-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-18
    相关资源
    最近更新 更多