鍍金池/ 問(wèn)答/HTML/ antd tree 清空已選中的treenode

antd tree 清空已選中的treenode

antd form 下的 tree組件,當(dāng)選中其中一個(gè)treenode之后,關(guān)閉窗口,再次打開(kāi)窗口,先前選中的treenode還是被選中的。請(qǐng)問(wèn)該如何將已選中的treenode清空呢?謝謝!

<div>
   <h4>分配權(quán)限</h4>
        <Tree className="rolesTree"
            checkable
            onCheck={this.onCheck}
            defaultExpandAll={true}
            loadData={this.onLoadData}
         >
          {this.renderTreeNodes(roles)}
        </Tree>
</div>

圖片描述

回答
編輯回答
痞性

關(guān)閉窗口的時(shí)候沒(méi)有改變state 使頁(yè)面重新渲染嗎?

2018年4月28日 17:09
編輯回答
蟲(chóng)児飛

類似這種問(wèn)題應(yīng)該馬上就能想到的是受控組件與非受控組件。
所以你將Tree修改為受近期組件就好了。

<Tree value={this.state.treeValues} onChange={v => this.setState({treeValues: v})}>
    //....
</Tree>
2018年3月6日 09:14
編輯回答
萢萢糖

謝謝。我在父組件中

state = {
checkedKeys:[]
}

form tree組件中

<Tree className="rolesTree"
      checkable
      onCheck={this.onCheck}
      checkedKeys={checkedKeys}
      defaultExpandAll={true}
      loadData={this.onLoadData}
    >
      {this.renderTreeNodes(roles)}
    </Tree>

就這樣解決了。剛接觸react和antd,還不熟悉,現(xiàn)學(xué)現(xiàn)做。謝謝大家了

2017年12月16日 05:26