错误 TS2532 - 对象可能是“未定义的”,它不能被取消定义

时间:2021-01-30 21:41:55

标签: typescript strict

我正在执行以下对象访问。但是 TS 抱怨即使我检查它也可能未定义。

      if (metrics[key0]) {
        if (metrics[key0][key1]) {

          […]metrics[key0][key1]]);
        }
      }

=> 第 2 行和第 4 行中的错误 TS2532。 游乐场示例:Click Me

当我将其更改为 metrics[key0]?.[key1] 时,错误消失了。但我为什么需要那个?如果它不能为空或未定义?

编辑:请不要再次将其标记为 this 的重复项。在该主题中,没有检查 null 或 undefined。

0 个答案:

没有答案