【发布时间】:2019-12-30 13:59:03
【问题描述】:
我已将字符串化对象存储到打字稿项目中的本地存储中。
当我试图获取 localStorage 数据时,它不能使用类型注释“字符串”
let str : string = localStorage.getItem("userDetails");
let UserData = JSON.parse(str);
上面的代码在第 1 行给了我以下错误: 错误:键入“字符串 | null' 不可分配给类型 'string'。 类型 'null' 不可分配给类型 'string'.ts(2322)
它正在使用类型注释“any”。
let str: any = localStorage.getItem("userDetails");
let UserData = JSON.parse(str);
但根据要求,不应使用“任何”。
编辑 :: 这不起作用,即使对于
let UserData = JSON.parse(localStorage.getItem("userDetails")||"{}");
作为一个新问题提出。
【问题讨论】:
-
检查是
if (typeof str === 'string')或str !== null哪个你更喜欢的字符串。
标签: reactjs typescript