Ссылка на маршрутизатор React не связывает путь - PullRequest
0 голосов
/ 25 сентября 2019

У меня есть компонент, в котором я использую реактивный поиск в качестве библиотеки для извлечения данных из эластичного и onValueSelected перенаправить его на страницу результатов, но когда я перенаправляю его в Result Components, он не возвращает ничего, что он даже не перенаправляет.Ниже мой компонент поиска

     render() {
      const { value } = this.state;
    console.log("value: ", value);
    // this redirect is for routing to results page after user query submission
    const { redirect } = this.state;
    if (redirect) {
      return (
        <Link
          to={{
            pathname: "/results",
            search: `?q="${value}"&type="${this.state.value1}"&querytype="${this.state.querytype}"`,
            type:this.state.value1,
            querytype:this.state.querytype,
            valuesearch:value
          }}
        />
      );
    }

        return (

            <ReactiveBase
            // app={this.state.value1}
            app="eforms"
            url="http://localhost:8111/elasticsearch/">

          <form onSubmit={this.handleSubmit}>
            <label>
              <select value1={this.state.value1} onChange={this.handleChange}>
              <option value1="_all">All</option>
              <option value1="eforms">Eforms</option>
                <option value1="complaints">Complaints</option>
              </select>
            </label>
          </form>     

        <div className="flex row-reverse app-container">
        <div className="results-container">


        <DataSearch
                  componentId="q"
                  dataField={["eform_ticket_num","eform_ticket_num.search"]}
                  URLParams={true}
                  placeholder="Search for notes..."
                  className="search-box"
                  onValueSelected={(value, cause, source) => {
                    console.log("suggestion selected: ", value, cause);
                    if (cause !== "SUGGESTION_SELECT") {
                      // use this query
                      this.state.querytype="Like"
                      console.log(
                        "use this query - onValueSelected: ",
                        this.query
                      );
                      this.setState({ redirect: true, value: value });
                      // this.props.history.push(`/?q="${value}"`);
                    } else {
                      this.valueSelected = true;
                      this.state.querytype="exact"
                      this.setState({ value });
                    }
                  }}
                  onQueryChange={(prevQuery, nextQuery) => {
                    this.query = nextQuery;
                    if (this.valueSelected) {
                      console.log(
                        "use this query - onQueryChange: ",
                        this.query
                      );
                      this.valueSelected = false;
                      this.setState({
                        redirect: true
                      });
                    }
                  }}
                />

            </div>
            </div>

        </ReactiveBase>
        );
    }
}

Ниже мой маршрут:

<Route path="/results" component={Results} />

Я не могу понять, почему Ссылка на не работает, как у меняиспользовал его и раньше.

...