尝试将ReactiveSearch用于搜索栏时出现此错误。这是我初始化的方式:

render() {
    const { tenantConfig, size, componentId } = this.props;
    return (
      <ReactiveComponent
        componentId={componentId}
        defaultQuery={this.defaultQuery}
      >
        <SearchDropdownDashboard
          size={size}
          handleSearchDashboard={this.handleSearchDashboard}
          fetching={this.state.fetching}
          tenantConfig={tenantConfig}
        />
      </ReactiveComponent>
    );
  }


这是传入的函数:

defaultQuery = () => {
    const { dashboardText } = this.state;
    const { mustNotObj } = this.props;

    let obj;

    obj = {
      query: {
        bool: {
          must_not: mustNotObj,
          must: multiMatchSearch(dashboardText)
        }
      },
      from: 0,
      size: 20
    };

    return obj;
  };


关于我在这里做错的任何建议吗?该函数似乎已正确传递给组件。

最佳答案

如果使用的是v3,则归因于API中引入的最新更改。您将需要使用render prop或React渲染模式,如以下示例所示。

您可以在此处查看文档:https://opensource.appbase.io/reactive-manual/advanced/reactivecomponent.html#usage-with-defaultquery

我已经在两个版本上创建了使用ReactiveComponent的示例:

v3https://codesandbox.io/s/serene-ritchie-rjo3m

v2https://codesandbox.io/s/tender-ramanujan-f3g31

希望这可以帮助!

关于javascript - 提供给ReactiveComponent的object对象,预期的function。,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56788506/

10-10 15:33