【发布时间】:2019-09-11 04:53:23
【问题描述】:
我有一个包含一些 JSON 数据的 React 应用程序。我有一个下拉菜单可以为我的应用程序中的工作设置状态。我有一个名为 status 的状态,其 id 加载状态如下。
this.state.status: [
{id: 1, name: 'To-do'},
{id: 2, name: 'In-progress'},
{id: 3, name: 'Completed'},
]
当通过选择下拉列表中的菜单项更改状态时,我需要将状态 ID 发送到 API。所以我用选定的状态设置下拉列表的值,并通过状态对象中的状态名称查找状态 id 并获取特定的 id。这是我到目前为止所尝试的。 问题是,API 调用无法捕获状态 ID。控制台显示“status_id 未定义”
statusHandleChange = event => {
const project_id = this.props.projectData.id;
const job_id = this.props.projectData.currentJobId;
this.setState({ currentStatus: event.target.value }, () =>
Object.keys(this.state.status).forEach((key) => {
if (this.state.status[key].name === event.target.value) {
const status_id = (this.state.status[key].id)
}
}),
API.post('job/change_current_status', { project_id, job_id, status_id })
.then(({ data }) => {
console.log("success!", data)
})
.catch((err) => {
console.log("AXIOS ERROR: ", err);
})
);
};
错误:'status_id' 未定义!
【问题讨论】:
标签: javascript arrays reactjs object ecmascript-6