无法通过localStorage.getItem(...)调用JSON.parse

pro*_*oko 6 flowtype

刚刚将Flow类型添加到我正在处理的项目中,并逐步添加类型,直到遇到此错误:

无法使用绑定到文本的localStorage.getItem(...)调用JSON.parse,因为null或未定义[1]与字符串[2]不兼容

这来自一个表达式:

const myVar = JSON.parse(localStorage.getItem('itemName'))
Run Code Online (Sandbox Code Playgroud)

我理解为什么会收到此错误(也许“绑定到文本”部分除外),但找不到解决方法。我会很感激这里的任何帮助!

Dak*_*ani 6

因此,该函数localStorage.getItem可以返回null值,并且流程希望您在解析之前解决它们。由于JSON.parse只需要一个字符串,你可以做到以下几点:

localStorage.getItem("key") || '{}'

因此,如果返回null。选择JSON.parse一个空对象字符串,它可以解析为一个空对象。