点击关键词跳转搜索结果,是不是应该等结果返回再执行跳转,为什么这里是直接同步的写法

来源:11-5 连接 redux

Funking

2020-01-05

  handleClickItem = (item) => {
    const { setInputText, addHistoryKeyword, loadRelatedShops } = this.props.searchActions
    setInputText(item.keyword)
    addHistoryKeyword(item.id)
    loadRelatedShops(item.id)
    // 跳转搜索结果页面
    this.props.history.push("/search_result")
  }

这里的跳转是不是应该使用异步写法呢?异步写法要怎么编写呢

写回答

1回答

艾特老干部

2020-01-06

你好,不需要异步跳转。当获取到搜索数据后,页面会重新渲染,没有必要一定要先获取数据再进行跳转的。项目中定义的异步action返回的是promise对象,所以如果要写成异步,可以参考下面代码:

loadRelatedShops(item.id).then((data) => {
    this.props.history.push("/search_result")
})


1
0

React16+Redux实战企业级大众点评Web App

从架构设计到部署上线,带你学习React技术栈与核心思想

1071 学习 · 306 问题

查看课程