我在React组件中有一个简单的API调用,单击按钮即可完成。发生这种情况时,按钮上放置了一个微调按钮,一旦我收到响应,它应该会恢复正常。
在大多数浏览器中,这一切都是膨胀的,除了Edge(微调器挂起)并且出现以下错误消息:
script5007:预期的对象
请记住,如果我在“网络”选项卡中查找,则PATCH请求已完成,并且如果我更新了页面,它也会按预期进行更新。因此,我不知道发生了什么,与该错误有关的类似问题也没有帮助。
这大概是我的代码:
export default class MyComponent {
handleClick (evt) {
evt.preventDefault()
this.setTogglingButtonStatus(true) // note, this is a reactive variable handled elsewhere
doPatchRequest(something).then(null, Errors.alert).always(() => {
// The code hangs despite the PATCH having finished and I never get to this point
console.warn('request ended!')
this.setTogglingButtonStatus(false)
})
}
render () {
return (
<button onClick={(evt) => this.handleClick(evt)} disabled={togglingStatus}>My button</button>
)
}
}
编辑:应该已经指定了据称发生错误的行,它在控制台中表示它位于this.setTogglingButtonStatus(true)
上,但是如果我逐步执行,则它将正常运行,并且仅在请求完成后才出现。所以我很困惑...