动态小部件
动态小部件是根据查询规则操作在 UI 中添加或删除的小部件。当您希望仅在应用特定查询或过滤器时显示小部件时,它们非常有用。
使用 DynamicWidgets
小部件,您可以根据查询规则对分面进行排序和有条件地显示。例如,您可以根据一组条件显示分面。
例如,brand
和 categories
是两个正在显示的分面。
<InstantSearch indexName="products" searchClient={searchClient}>
<DynamicWidgets>
<RefinementList attribute="brand" />
<RefinementList attribute="categories" />
</DynamicWidgets>
</InstantSearch>
使用查询规则配置
{
"search_settings": {
"query_rules": [
{
"objectID": "1",
"conditions": [],
"actions": [
{
"action": "RenderFacetsOrder",
"facetAttributesOrder": ["brand"] // only display brand facet by default
}
]
}
{
"id": "2",
"conditions": [
[
{
"context": "query",
"match_type": "prefix",
"value": "star"
}
]
],
"actions": [
{
"action": "RenderFacetsOrder",
"facetAttributesOrder": ["categories"] // only display categories facet when query starts with "star"
}
]
}
]
}
}
有关查询规则的更多信息,请参阅 查询规则 指南。