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

多条件渲染异常:TODO列表优先级始终显示Low,求问题排查

问题排查:TODO列表优先级始终显示Low的原因及修复方法

以下是几个可能导致优先级始终显示Low的原因及对应的修复方案:

  • 数据类型不匹配:严格相等运算符===要求值和类型完全匹配。如果value.priority实际是字符串类型(比如后端返回的"1"、"2"),而你用数字1、2去比较,就会匹配失败,最终走到默认的Low分支。

    • 修复方案:要么改用宽松相等==,要么将比较值转为字符串,比如value.priority === "1"。
  • 数据未正确赋值:确认value.priority是否真的被设置为1或2。可以在组件里添加console.log(value.priority),查看实际渲染时这个字段的取值——可能是初始值未正确设置,或者数据字段名有误(比如实际是priorityLevel而非priority)。

  • 拼写小问题:代码里的hight是拼写错误,应该是High,这个不影响逻辑,但会导致显示文本错误,建议修正。

修复后的参考代码(数字类型匹配场景):

<p className="text-todo italic">
  Priority: {value.priority === 1 ? (
    <span>High</span>
  ) : value.priority === 2 ? (
    <span>Medium</span>
  ) : (
    <span>Low</span>
  )}
</p>

如果value.priority是字符串类型,代码调整为:

<p className="text-todo italic">
  Priority: {value.priority === "1" ? (
    <span>High</span>
  ) : value.priority === "2" ? (
    <span>Medium</span>
  ) : (
    <span>Low</span>
  )}
</p>

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 19:45:36