Я пытаюсь условно визуализировать свой компонент Results из ReactiveBase , но каждый раз, когда я пытаюсь использовать троичный оператор, это прерывает рендеринг.Если я удаляю троицу, отображаются результаты.
Я использую компонент <ReactiveList>
для отображения результатов в моем компоненте Results.
Я хочу, чтобы результаты отображались только в том случае, если у пользователя есть ACTUALLYотправил поисковый запрос.Так как я могу условно визуализировать компонент Results из ТОЛЬКО после того, как пользователь отправил запрос
Вот мой код:
import React, { Component } from 'react';
import { Redirect, withRouter } from 'react-router-dom';
import { ReactiveBase, DataSearch } from '@appbaseio/reactivesearch';
import Results from '../../components/appbaseio-search/Results';
class SearchContainer extends Component {
constructor(props) {
super(props);
this.state = {
redirect: false,
loading: false,
};
}
render() {
const { pathname } = this.props;
const { value, loading } = this.state;
const { redirect } = this.state;
if (redirect ) {
return (
<Redirect
to={{
pathname: '/search',
search: `?q="${value}"`,
}}
/>
);
}
return (
<ReactiveBase
...>
<DataSearch
...
/>
{ pathname === '/results'
? <Results />
: null
}
</ReactiveBase>
);
}
}
export default withRouter(SearchContainer);