javascript - 我想在使用Elasticsearch在React Js中输入搜索查询之前获得页面加载时的所有结果

标签 javascript reactjs search elasticsearch infinite-scroll

我想在页面加载后立即显示所有结果,然后再输入搜索字词。输入搜索词后,结果应该相应地出现。我正在使用 flex 搜索通过React Js显示结果。

这是我的代码:

import React from 'react';
import PropTypes from 'prop-types';
import LazyLoad from 'react-lazy-load';

let i = 1;


class SearchResults extends React.Component {

constructor(props) {
    super(props);
    this.state = { results: [] }
} 

render () {
    return (
        <div className="search_results">
            <hr />
            <ul>
            { this.props.results.map((result) => {
                return (
                            <li key={ result._id + i++}>
                                <LazyLoad className="lazy">
                                    <img className="image" src={<API URL> + result._source.file_name} alt="Search Result" />
                                </LazyLoad>
                            </li>
                        ) }) }      
            </ul>
            <button type="button" className="btn btn-default">Load More</button>
        </div>
    )
}
}

SearchResults.propTypes = {
    results: PropTypes.array
}

export default SearchResults;

我将大小设置为20,并且每20个请求中就需要一个。请帮我。谢谢。

目前,它仅显示前20个结果。我希望它通过使用无限滚动显示更多结果。

最佳答案

您将需要更改查询以解决您的分页。
看看ES paging

关于javascript - 我想在使用Elasticsearch在React Js中输入搜索查询之前获得页面加载时的所有结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44239901/

相关文章:

python - 在文本文件中找不到字符串

javascript - 当 IE 8 中的尺寸更改(高度、宽度)时,VML 中的可拖动元素会卡住

javascript - AmCharts stocklegend 的精确度

javascript - onClick 按钮调用另一个组件的方法

javascript - (简单)Jquery ajax不返回数据

reactjs - 如何在 Material UI-5 的 styled() 中同时传递主题和 Prop ?

html - 固定的 div 位于另一个 div 之上

javascript - 使用多个 es6 映射并使其异步

android - 在 Intent 搜索中获取音频文件的路径

regex - 如何提取捕获的 Gnu emacs regex (regexp) 组以插入到其他地方?