J'utilise localstorage pour y stocker des données et j'en récupère dans le constructeur, je veux que la vérification varaible conserve sa valeur lors de l'actualisation de la page et compare sa valeur avec le 0, après avoir obtenu la valeur mise à jour si check == 0, alors il devrait entrer dans cette fonction .

Je suis coincé sur la façon dont cela peut être possible?

check=0;

ngOnInit() { 

    if(this.check==0)
    {
        this.list =new Array();
        this.list.push("Purchase a ring for my beautiful wife","get new GALAXY Note 150","Complete kevin's work ASAP","Buy 2 dozen eggs","Get milk on my way to home");
        localStorage.setItem('list', JSON.stringify(this.list));
        this.check++;
        localStorage.setItem('incre', JSON.stringify(this.check));
    }

    this.check=JSON.parse( localStorage.getItem('incre'));
    this.list=JSON.parse( localStorage.getItem('list'));
}
1
kappo 17 nov. 2017 à 09:45

4 réponses

Meilleure réponse
  1. Supprimez tout de constructor.

public check: number = 0;

ngOnInit() {
this.check = JSON.parse(localStorage.getItem('incre')) || 0;


if (this.check === 0) {
 // do the rest
}

}
2
DrNio 17 nov. 2017 à 07:04

Vous ne définissez même pas le 0 initial comme le code dr.nios.

public check: number = 0;
ngOnInit() {
  this.check = JSON.parse(localStorage.getItem('incre'))
  if (!this.check) {}

}

Soyez clair et lisible.

0
Rach Chen 17 nov. 2017 à 07:36

Déplacer cette instruction au début du constructeur

constructor() { 
   this.check=JSON.parse(localStorage.getItem('incre'));
   if(this.check==0)
0
Dhana Sekar 17 nov. 2017 à 07:03

Si je comprends bien votre question, alors this.check=JSON.parse( localStorage.getItem('incre')); devrait être en haut de votre constructeur et vous devriez le comparer dans if block

Essaye ça

check=0;
list = any[];

constructor() { 

 this.check=JSON.parse( localStorage.getItem('incre'));    
 if(this.check == undefined || this.check==0)
 {
  this.list =new Array();
  this.list.push("Purchase a ring for my beautiful wife","get new GALAXY Note 150","Complete kevin's work ASAP","Buy 2 dozen eggs","Get milk on my way to home");
  localStorage.setItem('list', JSON.stringify(this.list));
  this.check++;
  localStorage.setItem('incre', JSON.stringify(this.check));
 }

  this.list=JSON.parse( localStorage.getItem('list'));
}
1
Saurabh Agrawal 17 nov. 2017 à 07:10
47344794