【问题标题】:Reactivesearch - query params from header not updating results pageReactivesearch - 来自标题的查询参数不更新结果页面
【发布时间】:2019-02-26 19:26:56
【问题描述】:

我的标题中有一个 CategorySearch 框,它通过查询参数将选定的值传递到搜索结果页面。第一次效果很好。

但我希望标题(带搜索框)保留在结果页面上,并允许用户更改标题中的搜索词。但是,如果您更改标题中的搜索词,即使路由更改,结果页面组件也不会使用新的查询参数重新呈现。

如果您更改结果页面上的第二个 CategorySearch 组件,它会更新。我计划在此组件正常工作后隐藏此组件。

我知道我缺少一件来保持组件同步。有什么想法吗?

标题组件

<CategorySearch
   componentId="q"
   categoryField="_type"
   URLParams
   onValueSelected={val => this.props.router.push(`/search?q="${val}"`)}
   ...
/>

结果页面

<CategorySearch
    componentId="q"
    URLParams
    categoryField="_type"
/>

<ResultList
    componentId="result"
    dataField="title"
    pagination={true}
    URLParams
    react={{
      and: [
        'q',
      ],
    }}
    onData={this.renderData}
/>

您可以在下面的示例中看到,我首先从主页运行搜索“测试”,这使我进入了带有正确“测试”搜索结果的结果页面。但后来我将标题中的搜索查询更改为“yoga”并按下回车键。它改变了路线,但搜索结果仍然显示为“test”。

示例:https://i.stack.imgur.com/VEmLz.gif

提前感谢您的帮助!

【问题讨论】:

  • 嗨,贾斯汀,你能指定你使用的是哪个 Reactivesearch 版本吗?

标签: reactivesearch


【解决方案1】:

从 CategorySearch 和 ResultList 中删除 URLParam 对我有帮助。

希望这对你也有帮助!

【讨论】:

    猜你喜欢
    • 2019-03-29
    • 2017-05-06
    • 2014-05-18
    • 1970-01-01
    • 1970-01-01
    • 2015-09-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多