Potrzebuję przechowywać dane w sesji przeglądarki i pobierać dane do momentu zakończenia sesji. Jak korzystać z pamięci lokalnej i sesji w Angular 2? ModułMagazyn lokalny w Angular 2
Odpowiedz
Zastosowanie Angular2 @LocalStorage, który jest opisany jako:
Ten mały Angular2/maszynopis dekorator sprawia, że bardzo łatwo zapisać i przywrócić automatycznie zmienną stanu w dyrektywie (klasa nieruchomości) za pomocą localStorage HTML5' .
Jeśli trzeba wykorzystywać cookies, należy spojrzeć na: https://www.npmjs.com/package/angular2-cookie
Obecnie nie ma osoby, która to utrzymuje. – Winnemucca
Następcą projektu angular2-cookie jest plik ngx-cookie https://www.npmjs.com/package/ngx-cookie –
Jest on obsługiwany i silniejszy (np. Słuchanie zmian w pamięci, obsługa plików cookie i tymczasowej pamięci) [ 'ngx-store'] (https: // github.com/zoomsphere/ngx-store) biblioteka kompatybilna z 'angular2-localstorage' –
Standardowa localStorage
API powinny być dostępne tylko zrobić np .:
localStorage.setItem('whatever', 'something');
Pamiętaj, że musisz dodać "dom"
do tablicy "lib"
w swoim tsconfig.json
, jeśli jeszcze jej nie masz.
maszynopis rzuca mi pasowanie. Czy znalazłeś sposób obejścia tego bez konieczności używania npm wymienionych dla innych odpowiedzi? – Winnemucca
@Winnemucca * "Rzucanie pasuje" * nie jest przydatnym stwierdzeniem problemu. Nie przypominam sobie, żeby dodawać coś poza tym, co obejmuje Angular CLI. – jonrsharpe
Przepraszam. Musiałem wejść do mojego pliku ts.config, aby to naprawić. "lib": [es2016 ", " dom " ]. Czy dodałeś już "dom"? – Winnemucca
Jak wspomniano powyżej, powinny być: localStorageService.set('key', 'value');
i localStorageService.get('key');
To działa dla mnie na moim kanciastym 4 projekcie i chcę ci podziękować za zaoszczędzenie mojego czasu. –
nie znalazłem dokumentu o localStorageService w api, gdzie mogę go znaleźć? – stackdave
do przechowywania danych w lokalnej przechowywania,
localStorage.setItem('key', 'value');
Upewnij się stringify wartość, na przykład, jeśli mamy obiekt localStorage.setItem(itemName, JSON.stringify(itemData));
OR dla pojedynczych par klucz-wartość localStorage.setItem('currentUser', JSON.stringify({ token: token, name: name }));
pobierać dane z localStorage user = JSON.parse(localStorage.getItem(currentUser));
Dzięki za porady parsowania JSON! – nosuic
Cieszę się, że mogę pomóc –
Możemy łatwo użyć localStorage ustalania danych i odbierania danych.
Note: it works with both angular2 and angular 4
//set the data
localStorage.setItem(key, value); //syntax example
localStorage.setItem('tokenKey', response.json().token);
//get the data
localStorage.getItem('tokenKey')
//confirm if token is exist or not
return localStorage.getItem('tokenKey') != null;
Local Storage Set Item
Syntax:-
localStorage.setItem(key,value);
localStorage.getItem(key);
Example:-
localStorage.setItem("name","Muthu");
if(localStorage){ //it checks browser support local storage or not
let Name=localStorage.getItem("name");
if(Name!=null){ // it checks values here or not to the variable
//do some stuff here...
}
}
also you can use
localStorage.setItem("name", JSON.stringify("Muthu"));
Session Storage Set Item
Syntax:-
sessionStorage.setItem(key,value);
sessionStorage.getItem(key);
Example:-
sessionStorage.setItem("name","Muthu");
if(sessionStorage){ //it checks browser support session storage/not
let Name=sessionStorage.getItem("name");
if(Name!=null){ // it checks values here or not to the variable
//do some stuff here...
}
}
also you can use
sessionStorage.setItem("name", JSON.stringify("Muthu"));
przechowywania i pobierania danych łatwo
dekoratorów można używać do oznaczania zmiennych, które chcesz przechowywać.
export class SomeComponent {
@LocalStorage
public variableToBeStored: string;
}
Przykład jak to zrobić jest w tym artykule: https://filipmolcik.com/angular-2-local-storage/.
wspaniałe rozwiązanie –
Save into LocalStorage:
localStorage.setItem("key",value);
For objects with properties:
localStorage.setItem("key",JSON.Stringify(object));
Get From Local Storage:
localStorage.getItem("key");
For objects:
JSON.parse(localStorage.getItem("key"));
This will save as string and retrieve as string. You need to Prase desired output
if value is non-string.
e.g. parseInt(localStorage.getItem("key"));
** It is better to use framework provided localStroage instead of 3rd party library localStorageService or anything else.
Install "kątowy 2-local-Storage"
import { LocalStorageService } from 'angular-2-local-storage';
- 1. Kątomierz - pusty lokalny magazyn
- 2. Wątek-lokalny magazyn i iOS
- 3. Gdzie jest zapisany lokalny magazyn Google Chrome?
- 4. Jak sprawdzić lokalny magazyn danych GAE
- 5. Waluta w Angular 2
- 6. Zliczanie w ngFor - Angular 2
- 7. Formularze w Angular 2 RC4
- 8. Zagnieżdżone obserwowalne w Angular 2
- 9. Generowanie pdf w Angular 2
- 10. Użyj Angular 2 with Electron (Angular CLI)
- 11. Angular 2 - wewnętrzna stylizacjaHTML
- 12. Angular 2 - JWT auth
- 13. Angular 2 - ngShow equivalent?
- 14. Angular 2 - Lista wydarzeń
- 15. Angular 2 wiele modułów
- 16. Angular 2 i Three.js
- 17. Wymagane biblioteki Angular 2
- 18. Angular 2 router.navigate
- 19. Angular 2 Staggering Animation
- 20. Angular 2 paypal
- 21. Angular 2 Element niewidoczny
- 22. Angular 2 webworkers
- 23. Angular 2 Waritional Validators.required?
- 24. Angular 2 Email Validator
- 25. Angular 2 zewnętrzne wejścia
- 26. Ionic 2/Angular 2 obiecująca powracająca obserwowalna
- 27. Równoważna z Angular 1 poza tym w Angular 2
- 28. Utrzymywanie CSS z JS w Angular 2/Angular-CLI
- 29. Interfejs Angular 2 do usługi
- 30. Angular 2 + ngrx (redux) + formularze
Możliwy duplikat [Jak żeton przechowywać w pamięci lokalnej lub Session w Kątowymi 2?] (Http://stackoverflow.com/ questions/39840457/how-to-store-token-in-local-or-session-storage-in-angle-2) –