2

我想使用 RoutingService 在搜索页面上显示特定类别的产品。遗憾的是,我在生成的 api 文档中找不到任何 RoutingService 文档。

斯巴达克斯版本:1.5.1

这就是我目前的方法的样子:

this.routingService.go({
            cxRoute: 'search',
            params: {
              query: '',
            },
          },
          {},
          {
            queryParams: {
              query: ':relevance:category:' + categoryId
            }
          },
        );

目前这将导致搜索页面返回所有产品(未按特定类别过滤)

我错过了什么吗?或者这种方法目前是不可能的,产品在使用时只能通过类别过滤cxRoute: 'category'

4

1 回答 1

1

我尝试了您发布的代码片段,它会将我引导到选择了正确类别的搜索页面。我不确定为什么你没有得到相同的结果。

例如尝试去:https ://spartacus.c39j2-walkersde1-d4-public.model-t.cc.commerce.ondemand.com/electronics-spa/en/USD/search?query=:relevance:category:1201

另一种方法是使用:/category/:code它将返回与搜索页面相同的类别。

(编辑):以下是自由文本搜索我们在搜索中所做的是传递“查询”,因此在这种情况下,参数中的类别:

this.routingService.go({
      cxRoute: 'search',
      params: { query },
    });

您可以在此处查看完整代码https://sap.github.io/spartacus/injectables/SearchBoxComponentService.html#source

于 2020-03-24T17:05:54.163 回答