This is similar to #40796374 but that is around types, while I am using interfaces.

Given the code below:

interface Foo {
  name: string;
}

function go() {
  let instance: Foo | null = null;
  let mutator = () => {
   instance = {
     name: 'string'
   };  
  };

  mutator();

  if (instance == null) {
   console.log('Instance is null or undefined');
  } else {
   console.log(instance.name);
  }
}

I have an error saying ‘Property ‘name’ does not exist on type ‘never’.

I don’t understand how instance could ever be a ‘never’. Can anyone shed some light on this?

11 Answers
11

Tags:

Leave a Reply

Your email address will not be published. Required fields are marked *