0

Im wondering, how is this code giving object is possibly undefined error

  if (newFocus) {
    if (viewCache[viewId] !== undefined) {
      dispatch(ViewActions.focusOn(viewCache[viewId].focus));
    } else {
      dispatch(ViewActions.focusOn(newFocus));
    }
  }

and line 3 is giving me error, viewCache[viewId] is possibly undefined even when wrapped in if (viewCache[viewId] !== undefined)

Clomez
  • 1,410
  • 3
  • 21
  • 41

1 Answers1

1

The error seems to be pointing out that viewCache can be undefined. You can add a check for its existence too

if (newFocus) {
    if (viewCache && viewCache[viewId] !== undefined) {
      dispatch(ViewActions.focusOn(viewCache[viewId].focus));
    } else {
      dispatch(ViewActions.focusOn(newFocus));
    }
  }
Shubham Khatri
  • 270,417
  • 55
  • 406
  • 400