react+antd中如何通过变量来控制Select中option的数量,如type=01时,option中有两个选项,type=02时,option有一个选项,将另一个隐藏
用js判断一下显示隐藏option就可以了
option用数据渲染,然后根据type改变值就行 类似于这个 或者三目运算。建议用第一个,三目也行
<select>
{
data.map((item)=>{
return <option value={item.value}>{item.name}</option>
})
}
</select>
data(){
data:[],
},
componentDidMount(){
if(this.props.type==1){
this.setState({
data:[{value:"1",name:"333"}]
})
}else{
///
}
}
//或者三目
{
this.props.type=="01"?<select>
<option></option>
<option></option>
</select>:<select>
<option></option>
</select>
}
const data = []
const dataList = [
{ name: "1111" },
{ name: "2222" }
]
if (type === "01") {
data = dataList
} else if (type === "02") {
data.push(dataList[0])
}
dataList相当于你传递过来的数据 但是你不用datalist进行渲染option
先通过type来判断得到你想要的数据 将数据放到另一个数组中,
然后用这个数组渲染option