当用户单击<a>时,我想首先获得一个通过承诺解决的新href,然后触发窗口位置的更改。但是我找不到执行此操作的好方法。

总结一下,这是伪代码:

getNewUrl = (e) => {
  e.preventDefault();
  fetchUrl.then(newUrl => {
     newUrl = newUrl;
     e.resumeEvent();
  })
}

<a
  href={newUrl}
  onClick={this.getNewUrl}
/>


但显然没有e.resumeEvent()。我该怎么办?
(不想在componentDidMount()中大量获取URL,因为可能会有很多请求)

最佳答案

听起来您只是想更改窗口位置。

window.location = newUrl

应该做到这一点。

09-30 19:33