react-bootstrap不使用状态更改DropdownButton标题

时间:2017-07-31 17:25:11

标签: reactjs react-bootstrap

我想在选择项目时更改<DropdownButton> 标题 。 问题是,我不能使用州cuz,下拉标题不是一个静态的“名称” 见例:

    this.props.itemToFltr.keys.map((key /* initial name to button */)=>{
         return (
               <DropdownButton id="dropdownBtn" bsSize="xsmall"  title={key} 
                 onSelect={(evt,name)=>{ /* can i change the title from here ? */ } } >

                  {this.props.itemToFltr[key].map((val)=>{
                  return <MenuItem eventKey={val} >{val} </MenuItem>
                })}

               </DropdownButton>
              )
        })

2 个答案:

答案 0 :(得分:0)

您仍然可以使用this.state,只需将itemToFltr重新映射到包含更新密钥的新列表,并让反应执行仅渲染更改项目的工作。

答案 1 :(得分:0)

好的,所以我有办法克服了问题,我只是使用jquery 并在select:

上运行此功能
onSelect={(evt,name)=>{ $("#dropdownBtn").text(name)  }}

这是我的解决方案,适用于那些无法使用状态更改文本的人