You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VueJS & Algolia:ais-refinement-list组件如何自定义筛选项显示名称

错误原因

你当前代码报错是语法问题:不允许直接在对象字面量(即map回调中返回的{...}结构)内编写if分支语句,对象内部仅支持定义键值对表达式。


实现方案

你有6个筛选分面需要重命名,推荐用映射表的方式实现,后续修改/新增替换规则只需维护映射表即可,代码更易维护:

// 定义所有标签的映射关系,按需补充剩下的5条规则
const labelMapping = {
  'MC': 'Multiple Choice',
  // 其余重命名规则按「原名称: 新名称」的格式写在这里
}

transformItems: function(items) {
  return items.map(item => ({
    ...item,
    label: labelMapping[item.label] ?? item.label
  }));               
},

如果仅需要临时测试少量替换,也可以用三元表达式替代if判断:

transformItems: function(items) {
  return items.map(item => ({
    ...item,
    label: item.label === 'MC' ? 'Multiple Choice' : item.label
  }));               
},

内容的提问来源于stack exchange,提问作者Dominic

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 20:15:02