Bonjour,

Je suis sur un challenge.

J'ai cinq terrains disponibles, le 1 , 2, 3 , 5 ,6
Ces terrains se trouvent dans un array

Code typescript : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
const f:any = []
    fields.map((p) =>{
      f.push(p.id)
    })
    console.log("All fields:",f)
// All fields: ["1", "2", "4", "5", "6"]


je veux maintenant activer 3 terrains, disons le 1, 2 et 5

Je dois miantenant retourner une valeur qui indique quels terrains sont 1 ou 0 (actif, inactif) et il m'est imposé ce format, ce qui me complique la vie

{"field1":"1", "filed2":"1", "field3":"0", "field4":"0", "field5":"1"}
J'ai donc commencer comme cela
Code typescript : 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
 
    const tags = {}
 
    f.map((i:any, o:any) => { // je loop mes terrains disponibles
      if(selectedFields.find((e:any) => e == i.toString()) == i){ // Si l'un de mes trois terrains actifs est dans f
        console.log(i, "IS IN ALL FIELD")
        // tags prend la valeur de {"field"+i.toString():"1"})
      }
      else{ // et si elle ne l'est pas, la valeur vient à 0
        console.log(i, "is NOT in all fields")
        // tags prend la valeur de {"field"+i.toString():"0"})
 
      }
    })
// pour contruire, au fur et à mesure de la progression de map()
 
    console.log("TAGS", tags) // doit afficher ceci {"field1":"1", "filed2":"1", "field3":"0", "field4":"0", "field5":"1"}

J'ai essayé avec .push, sans succès.

Comment est-ce que vous le feriez?