[英]React Select defaultValue is set but doesn't appear
我什至尝试过手动设置文档中的默认值,但没有骰子。 我不确定这是样式问题还是什么。 所以在下面我发布了我所拥有的以及截图。
<Select
components={animatedComponents}
getOptionLabel={convertToLabel}
getOptionValue={option => option.resource_name}
isMulti
onChange={changeEvent}
options={users}
theme={theme => ({
...theme,
borderRadius: 0
})}
defaultValue={(props.value || []).map(convertToValue)}
value={(props.value || []).map(convertToValue)}
/>
convertToValue
函数
const convertToValue = props => {
return {
label: `${props.name} ${props.family_name}`,
value: props.resource_name
};
};
convertToLabel 函数
const convertToLabel = props => {
return `${props.name} ${props.family_name}`;
};
changeEvent
函数
const changeEvent = (selectedOption, i) => {
let option = {
name: "reviewers",
value: selectedOption
};
update({ target: option });
};
用户和道具对象
users:
[
{
resource_name: "facebook_user1",
name: "Joe",
family_name: "Dirt"
},
{
resource_name: "facebook_user2",
name: "Trident",
family_name: "White"
}
]
props:
{
field: "placeholder",
fieldType: "placeholderType"
value:[
{
resource_name: "facebook_user1",
name: "Joe",
family_name: "Dirt"
},
{
resource_name: "facebook_user2",
name: "Trident",
family_name: "White"
}
]
}
我在屏幕上看到的。
如果没有看到选择渲染的实际 JSX,就很难准确地说出您的问题是什么。 以下是我看到的一些问题,查看您的问题,以及对可能发生的事情的一些艰难猜测。
defaultValue
道具是什么样子,但请记住, value
应该等于您的option
之一,而不仅仅是option
“价值”getOptionLabel = (option) => string
和getOptionValue = (option) => string
。 您在实例中使用了props
,这可能与父作用域冲突。convertToValue
方法签名也与这些一致。onChange
事件方法签名与 React-Select 不一致,可能会让您感到痛苦。 有关这方面的帮助,请参阅我对这个最近问题的回答。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.