Я работаю над проектом с несколькими компонентами, которым необходимо совместно использовать данные, сохраненные в локальном хранилище. Мне удается сохранить их как объект с помощью setItem, но когда я пытаюсь их получить, я получаю «undefined» в console.log.
Функция для сохранения (щелкните):
saving() {
let dataStorage = {
departureDate: this.departureDate,
returnDate: this.returnDate,
departureAirport: this.departureAirport,
arrivalAirport: this.destinationAirport,
passengersNumber: this.numberOfPassengers
};
localStorage.setItem("flightdetails", JSON.stringify(dataStorage));
this.showStorage = JSON.parse(localStorage.getItem("flightdetails"));
}
testLocal() {
console.log(this.showStorage); //Here I get undefined
}
Объявлены все переменные:
public numberOfPassengers: number = 1;
public departureDate: any;
public returnDate: any;
public departureAirport: string;
public destinationAirport: string;
public showStorage: any;
Также я не уверен, как вызвать элемент локального хранилища в другой компонент для отображения. В настоящее время у меня есть компонент под названием Summary:
COMPONENT.TS:
export class SummaryComponent implements OnInit {
public showStorage = "";
constructor() {
this.showStorage = localStorage.getItem("flightDetails");
}
HTML для сводки:
Departure date: {{ showStorage.departureDate}}
STACKBLITZ: https://stackblitz.com/edit/flight-date-pikcer
Спасибо за вашу поддержку в решении этой проблемы!