回显tree控件的默认选中值时的问题
- 开始是用的defaultCheckedKeys,才发现他只渲染一次,不会每次都加载,所以连续切换回显时是不会改变值的!
- 然后我换成了checkedKeys,把默认值直接赋值给他后虽然可以回显实时更新,但是点击树节点却看不到选中了。
- 因为多级联动选择器是封装成的子组件,所以在子组件的
// 第一次获取menu
componentDidMount() {
this.setState({
checkedKey:this.props.menu // 拿到父组件传递过的回显值
})
}
componentDidMount只渲染一次,要想每次更新就要监控属性变化了
// 再根据新传入的role来更新状态 // 不然会出现点击不了
UNSAFE_componentWillReceiveProps(nextProps) {
this.setState({
checkedKey:nextProps.menu
})
}
// UNSAFE_componentWillReceiveProps 首次不加载,第二次之后才加载更新