在我的 NextJS 应用程序中实现 Algolia 搜索。我已经设置了数据源和索引。我试图设置的内容类似于 Gucci 在搜索中所做的事情。Gucci 正在使用 Algolia 来提供搜索功能。
我尝试使用 Algolia 的react-instantsearch-dom包。我/pages/_app.js
像这样更新了我的文件(这里只写了相关的代码):
/**
* /pages/_app.js
*
*/
//-------- Algolia
import algoliasearch from 'algoliasearch/lite';
import { InstantSearch } from 'react-instantsearch-dom';
const searchClient = algoliasearch( 'xxxxxxxxxx', 'yyyyyyyyyyyyyyy' );
//-------- /Algolia
function MyApp({ Component, pageProps }) {
return (
<>
<InstantSearch searchClient={searchClient} indexName={ 'abc_test_products' }>
<Component {...pageProps} />
</InstantSearch>
</>
)
}
export default MyApp
这样我就可以使用react-instantsearch-dom
任何地方的组件。
我对这里的三件事感到困惑。
疑点一:
如何将 algolia 查询和过滤器传递到此处的搜索结果页面并使用组件显示结果:https ://www.gucci.com/us/en/st/newsearchpage?facetFilters=categoryLevel1_en%3AChildren&searchString=handbags&search-猫=标题搜索
因此,基本上,当用户单击其中一个 algolia 搜索建议(从单击页面右上角的搜索框后的下拉菜单中)时,他们会被带到搜索结果页面,并且似乎 Algolia 搜索已被实例化并显示结果。
疑点二:
如何并排显示自动建议和产品图片?
疑点三:
显示动态过滤器/优化选项。我知道如果brand
我们的 Algoia 索引/数据集中有一个属性,我可以将其包含在搜索过滤器中,如下所示:
<RefinementList attribute="brand" />
但是,如果我想显示优化列表的不同属性,比如“颜色”、“品牌”等,我将如何从搜索结果中动态显示优化选项的标题和列表。