在我的数组中,我在“Options” props 中获得了 5 个值,但我想设置我在 state 中定义的默认值 Please Select 。
并试图获得值(value) Prop 。但它出现错误。 未定义的标签
基本上,当我在下拉“请选择”中打开页面时,该数组值应该出现。
请建议。
在选择字段下面我创建了单独的组件。
<AndroidPicker
mode="dropdown"
iosIcon={<Icon name="chevron-down" type="MaterialCommunityIcons"/>}
placeholder=""
placeholderStyle={{ color: "#bfc6ea" }}
placeholderIconColor="#007aff"
style={{ width: '100%' }}
selectedValue={value}
onValueChange={(e) => onChange.bind(that, this.props, e)()}
>
{
options.map((item, indx) => {
let { label, value } = item;
return <AndroidPicker.Item key={indx} label={label} value={value}/>;
})
}
</AndroidPicker>
this.state={
religionValue:'Please Select'
}
religion: Array(5)
0: {name: "Hindu", code: "H", __typename: "TroubleTicketMasterCode"}
1: {name: "Christian", code: "C", __typename: "TroubleTicketMasterCode"}
2: {name: "ISLAM", code: "I", __typename: "TroubleTicketMasterCode"}
3: {name: "Others", code: "O", __typename: "TroubleTicketMasterCode"}
4: {name: "Not Disclosed", code: "ND", __typename: "TroubleTicketMasterCode"}
religionChanged = (key, val) => {
this.handlereligionChanged({ field: "religionValue" }, val);
};
handlereligionChanged = (props, e) => {
let tempObj = this.state.religionValue;
tempObj[props.field] = e;
this.setState({ religionValue: e });
};
let religionOptions = [];
religion.map(({ code: value, name: label }) => {
religionOptions.push({ value, label });
});
<SelectField
label="Religion"
value={this.state.religionValue}
options={religionOptions}
node="Religion"
onChange={this.religionChanged}
that={this}
setIcon={true}
/>
最佳答案
使用名为 defaultValue
的 SelectField
属性。查看文档 react-md site
关于javascript - 如何在 native react 中设置下拉菜单中的默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58165848/