我有一个上传文件并将数据保存在服务中的组件
this.csvDataService.saveCSV(csv)
然后我重定向到另一个服务:
this.router.navigate(['/map'])
在我的地图组件中:
ngOnInit() {
this.getSnappedRoute()
}
getSnappedRoute() {
let inputCSV = this.csvDataService.getCSV()
this.googleMapsService.tracePathOnRoad(inputCSV).subscribe(routeLocations => {
this.snappedRoute = routeLocations['json']['snappedPoints'];
this.openMap();
})
};
openMap() {
let mapProp = {
center: new google.maps.LatLng(this.snappedRoute[0]['location']['latitude'], this.snappedRoute[0]['location']['longitude']),
zoom: 5,
mapTypeId: google.maps.MapTypeId.hybrid
}
let map = new google.maps.Map(document.getElementById("googleMap"), mapProp)
}
这是第一次运行良好,但是如果我刷新页面,我的csvDataService
中的csv数据就会消失。
答案 0 :(得分:1)
Angular服务中的数据存储在内存中。刷新页面(如重新启动应用程序)会清除该内存。没有理由期望应用程序状态持续重载。无论是将它放在服务,组件还是任何其他对象中,都是如此。
如果您需要它,请使用cookie或本地存储,或将数据发送到数据库。