把Form表单中的select组件改为受控组件,单独提出来封装一下。
父组件中:
父组件给子组件传回调函数,接收子组件的值,然后存储到state中,Form表单提交时,从state中获取Selet组件的值。
子组件中:
<a-table
ref="table"
size="default"
bordered
rowKey="id"
:columns="columns"
:dataSource="dataSource"
:pagination="ipagination"
:loading="loading"
:scroll="{x: 3200}"
:showHeder="true"
@change="handleTableChange"></a-table>
onSelectChange(selectedRowKeys, selectionRows) {
this.selectedRowKeys = selectedRowKeys
this.selectionRows = selectionRows
},
想要从后台请求数据后,动态填入Select组件中的defaultValue。结果数据值可以打印,但是select组件中无显示。
其实defaultvalue已经取到值了,但是因为下拉内容没渲染完成,所以没法实现展示默认值。
百度。。。
还真百度到了!
引用:如果想实现非受控组件(用defaultValue),两个办法,第一个服务端没有返回数据的时候,不render Select,render一个占位的placeholder。另一个办法,给Select加一个key,值为defaultValue。
小朋友你是否有很多个问号?为什么加key值可以呢。这就要从react开天辟地那时候开始说起了。。。
two thousand years later~
说完了,总结一下,就是diff算法相关的概念,key的赋值使得select组件重绘,此时就可以取到默认值对应的option了。
首先,动态获取日期(注意日期格式为date)
其次,在需要禁用日期的选择中引入禁用方法
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)