Bonjour,

Dans ce bout de code, je souhaite affecter la valeur "toto" ou "tutu" à ma variable "test" :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
 
test: string;
result1: any;
result2: any;
 
ngOnInit() {
  this.unService.getQuelqechose()
    .subscribe( () => {
      this.fonction1();
    });
}
 
fonction1() {
  if(.....) {
    this.test = 'toto';
    this.monService.getSomething()
      .subscribe(result1 => {
        this.result1 = result1;
        this.fontion2();
          });
  } else {
    this.fonction2();
  }
}
 
fonction2() {
  if(.....) {
    this.test = 'tutu';
    this.monService.getSomething()
      .subscribe(result2 => {
        this.result2 = result2;
          });
  } else {
    ..........;
    }
}
Je récupère ma variable en @Input() dans le composant enfant et mon soucis c'est que ma variable "test" vaut systématiquement "tutu". Je suppose que la valeur "toto" est écrasée sitôt l'appel de fonction2()).
Pourtant l'appel de fonction2() est asynchrone, et je pensais que cela me permettrait de récupérer soit une valeur soit l'autre.
Avez-vous une idée de comment je peux procéder pour récupérer l'une ou l'autre des valeurs de la variable "test" ?
Merci d'avance