提问人:Saif eldeen Adel 提问时间:3/3/2021 更新时间:10/1/2022 访问量:1521
AntDesign 选择菜单,希望在选中时只显示部分选项
AntDesign select menu, want to only show part of the option when selected
问:
所以我有这个 AntDesign Select 菜单
<CustomSelect defaultValue={weeklyImp} dropdownMatchSelectWidth={180} dropdownStyle={{textAlign: "center"}} onChange={handleWeeklyImpChange}>
<Option value="0" >0 - red</Option>
<Option value="1" >1 - green</Option>
<Option value="2">2 - blue (after red)</Option>
</CustomSelect>
现在,如您所见,选项列表是等。
但是,例如,当我单击时,我希望该选择框中写入的值只是 .0 - red
1 - green
1
这有什么奇怪的问法吗?我在选择文档的任何地方都找不到它
答:
1赞
Caleb C. Adainoo
1/8/2022
#1
创建这样的状态
const [selectedColor, setSelectedColor] = useState();
您还需要这样的功能
const funcShowOnlyPhoneCode = (value) => {
setSelectedCode(`${value.substr(0,1)}`);
console.log('value: ', value);
return value;
};
然后在 JSX 中添加onChange={funcShowOnlyPhoneCode}
<CustomSelect onChange={funcShowOnlyPhoneCode} defaultValue={selectedColor} dropdownMatchSelectWidth={180} dropdownStyle={{textAlign: "center"}} onChange={handleWeeklyImpChange}>
<Option value="0" >0 - red</Option>
<Option value="1" >1 - green</Option>
<Option value="2">2 - blue (after red)</Option>
</CustomSelect>
0赞
Redwan Hossen Rafsan
10/1/2022
#2
您可以通过使用 in 并在label
Option
optionLabelProp
Select
<CustomSelect defaultValue={weeklyImp} dropdownMatchSelectWidth={180} dropdownStyle={{textAlign: "center"}} onChange={handleWeeklyImpChange} optionLabelProp="label">
<Option value="0" label="0">0 - red</Option>
<Option value="1" label="1">1 - green</Option>
<Option value="2" label="2">2 - blue (after red)</Option>
</CustomSelect>
评论
<Option value="0" title="0" >0 - red</Option>
0 - red
value
onChange
<Select value={this.state.value.replace(/^\d - /, '')
<Option value="red">red</Option>
Select
Option
<Option value="0"> Displayed value <Option />