繁体   English   中英

对象可能为“ null”-TypeScript linter错误

[英]Object is possibly “null” - error with TypeScript linter

我有关于TypeScript的问题! 我们正在整个项目中进行JSX到TypeScript的转换。

  {instances.map(instance => {
    const { id, name, type } = second;

    const pageUrl = makePath(
      routes.page.path,
      { firstId: first.id , secondId: id }, <<<<<<
    );

在带有“ <<<<<<<”的行上,“ first.id”的“ first”突出显示,并出现以下错误:

Object is possibly 'null'.

我不确定如何将其定义为不会被视为null的地方。 我可以通过解构找出第二个,但是不能两次定义“ id”。 任何指导将不胜感激!

如果我在组件的前面定义,这似乎可行,

  const firstId = (first ? first.id : '');

并将firstId: first.id替换为firstId: firstId

如果这不是推荐的解决方案,请告诉我! 但是,它确实解决了我所看到的错误,并且似乎根本没有影响功能。

类型检查器无法确定first是否为非null 您可以添加非null断言运算符 ! 直接在有问题的对象之后告诉linter,该对象将不会为null,请尝试以下操作:

{ firstId: first!.id , secondId: id }, <<<<<<

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM