[英]Need to read cart products from local storage angular 4
Need to fetch data from local storage in angular 4 . 需要以角度4从本地存储中获取数据。 I have tried to implement this using following in file data.service.ts 我试图在文件data.service.ts中使用以下代码来实现
JSON.parse(localStorage.getItem('customerData')).then((val) => { if (val != null || val != undefined) this.customerData = val; });
But the following error was displayed in console 但是控制台中显示以下错误
ERROR Error: Uncaught (in promise): TypeError: Cannot read property 'then' of null TypeError: Cannot read property 'then' of null at new DataService (data.service.ts:110) at _createClass (core.js:10889) at _createProviderInstance$1 (core.js:10861) at resolveNgModuleDep (core.js:10846) at NgModuleRef_.get (core.js:12083) at resolveDep (core.js:12573) at createClass (core.js:12443) at createDirectiveInstance (core.js:12280) at createViewNodes (core.js:13738) at createRootView (core.js:13627) at new DataService (data.service.ts:110) at _createClass (core.js:10889) at _createProviderInstance$1 (core.js:10861) at resolveNgModuleDep (core.js:10846) at NgModuleRef_.get (core.js:12083) at resolveDep (core.js:12573) at createClass (core.js:12443) at createDirectiveInstance (core.js:12280) at createViewNodes (core.js:13738) at createRootView (core.js:13627) at resolvePromise (zone.js:809) at resolvePromise (zone.js:775) at eval (zone.js:858) at ZoneDelegate.invokeTask (zone.js:421) at Object.onInvokeTask (core.js:4736) at ZoneDelegate.invokeTask (zone.js:420) at Zone.runTask (zone.js:188) at drainMicroTaskQueue (zone.js:595) at ZoneTask.invokeTask (zone.js:500) at ZoneTask.invoke (zone.js:485) defaultErrorLogger @ core.js:1448
您可以直接从localStorage
分配值,
this.customerData = JSON.parse(localStorage.getItem('customerData'));
JSON.parse()
doesn't return a promise but an object. JSON.parse()
不会返回Promise,而是一个对象。 So, you can skip the then()
and directly assign it to a variable. 因此,您可以跳过then()
并将其直接分配给变量。
var val = JSON.parse(localStorage.getItem('customerData'))
if (val != null || val != undefined) {
this.customerData = val;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.