javascript - React - 映射数组对象并传递给 react-select 中的 options 属性
问题描述
我正在尝试映射一组对象并使用 name 键将其传递给react-select
. 我可以使用常规 JS 做到这一点吗?我正在尝试合并这个例子。
我的模拟数据
mock.onGet("/dataschemas").reply(200, {
data: [
{
id: "2147483599",
selfUri: "/dataschemas/2147483599",
name: "Book Catalog"
},
{
id: "2147483600",
selfUri: "/dataschemas/2147483600",
name: "Business Articles"
},
{
id: "2147483602",
selfUri: "/dataschemas/2147483602",
name: "Phone Data"
}
]
});
在cDM
我正在使用响应更新状态并将其存储在schemas
componentDidMount() {
axios.get("/dataschemas").then(function(response) {
console.log(response.data.data);
this.setState({
schemas: response.data.data
});
console.log(this.state.schemas);
});
}
然后在我的选择组件中,我将模式设置为options
道具并映射到values
道具中
<Select
id="color"
options={this.state.schemas}
isMulti={false}
value={this.state.schemas.filter(
({ name }) => name === this.state.name
)}
getOptionLabel={({ name }) => name}
getOptionValue={({ id }) => id}
onChange={({ value }) => this.setState({ name: value })}
onBlur={this.handleBlur}
/>
我似乎无法在道具中获得正确的值,以在我的代码框示例的下拉选择中显示数据模式名称
有关与此问题有关的react-select 文档的更多信息
解决方案
推荐阅读
- javascript - 此正则表达式与小数点后的 0 不匹配
- jquery - 我使用 Highcharts 创建了一个散点图,但 point.z 值未显示在工具提示中
- qt - Qt 方法 logicalDpiX() 不应该为相同分辨率但不同大小的屏幕返回不同的值吗?
- javascript - 设置超时,运行函数然后刷新页面
- amazon-web-services - 防止某些 AWS AMI 意外删除
- python - Python .str 方法在 iterrow 函数中不起作用
- scala - Scalatest GeneratorDrivenPropertyChecks 初始化种子
- objective-c - iOS13应用openUrl?(对象-C)
- angular - Angular 形式的 Laravel CSRF 令牌
- c - 如何初始化 GNU C 全局寄存器变量