【发布时间】:2018-10-07 12:13:49
【问题描述】:
我正在使用 Angular 6 开发一个新的网络应用程序。我正在使用“共享服务”将数据从一个组件发送到另一个组件。我可以非常轻松地发送它。 当我尝试刷新页面时,共享服务数据变得未定义并且应用程序中断。当然,我尝试了 if 条件,它运行良好,并且应用程序重定向到上一页;
但是除了 if 条件还有其他方法吗,所以浏览器应该与以前的数据一起留在“setupItemComponent”中,并且共享数据不应该是未定义的
提前致谢
这是我的代码:
setup.ts:
=================
constructor(private router:Router,private sharedservice:SharedService){}
onCLickEdit(clickedData:any){
//function will execute when button clicks
sharedservice.data=clickedData;
this.router.navigate(['setup/setup_items'])
}
setupItem.ts
====================
data:any;
constructor(private sharedservice:sharedService){}
ngOnInit() {
this.data = this.sharedData.data;
if (this.data) {
this.formValidation();
}
else {
this.router.navigate(['setup']);
}
}
sharedService.ts
==================
import { Injectable } from '@angular/core';
@Injectable({
providedIn: 'root'
})
export class ShareDataService {
data: any;
constructor() { }
}
【问题讨论】:
-
嗨 Pepe,我遇到了这个问题。你解决了这个问题吗?
-
是的,你可以使用浏览器本地存储
标签: typescript angular6