0
votes

Réagir natif: comment récupérer des données d'un état avec une matrice JSON imbriquée et une carte d'état pour obtenir une valeur particulière avec un identifiant donné

J'ai un sélecteur natif réagissant qui a une gamme d'objets que j'ai récupérés de mon API et enregistré à l'état sous propriétés. Il s'agit d'une capture d'écran de mes données extraites

J'ai besoin de trouver l'objet correct dans le tableau de l'IDI lorsque je sélectionne la liste déroulante de la propriété. J'ai besoin que cela soit fait à l'aide de la logique JavaScript sans effectuer un deuxième appel à mon serveur. Ceci est mon code à l'intérieur du rendu pour une liste déroulante xxx

J'ai besoin d'écrire mon code dans cette fonction xxx


6 commentaires

Vous pouvez utiliser une boucle sur Type Tableau et rechercher des données appartiennent à votre _id .


Quel est TNAME? Dans la capture d'écran, ils ressemblent à des chaînes qui n'apparaissent pas dans les objets de propriété ... Vous avez besoin d'une valeur ou d'un index que vous pouvez utiliser pour mapper les valeurs dans ce tableau des propriétés.


@James tnames sont des valeurs de chaîne dans le tableau de type.Je besoin de valeurs dans ma prochaine liste déroulante lorsque je sélectionne la première valeur déroulante. I.E La deuxième valeur dépend de l'ID de la première valeur


@Nimeshbhalani pouvez-vous m'aider davantage. Je suis débutant dans le réagité


Pourriez-vous ajouter un exemple entièrement élargi de type à la question initiale, afin que je puisse voir exactement ce qui est là? Il devrait être assez simple pour trouver la propriété correspondante une fois que je peux voir où cette valeur est assise. Vous voulez dire TNAME est un nom de propriété sur ces objets à l'intérieur type tableau?


@James j'ai trouvé la réponse. Ces types de chute sont appelés chute de cascade. Merci de votre contribution


3 Réponses :


0
votes
getPropertyById(itemValue) {
  this.setState({
    pickerProperty : this.state.properties.find(item => item._id === 
    itemValue)
  })
}

1 commentaires

Merci j'ai déjà trouvé une solution similaire à ceci.Merci



0
votes

Essayez ceci xxx

appelez-le de cette façon à l'intérieur de votre onvaluechange : xxx


0 commentaires

0
votes

a trouvé cette solution et cela m'a aidé. XXX PRE>

Utiliser chacun de ceux-ci à Onchange = {} de chaque liste déroulante résoudra le problème. N'oubliez pas de modifier votre constructeur comme suit P>

   constructor(props) {
    super(props);
    this.changeProperty = this.changeProperty.bind(this);
    this.changeType = this.changeType.bind(this);

}


0 commentaires