Comment passer un tableau comme résultat d'un composant fonctionnel à un autre dans React

Milos Djoric

Je veux transmettre les données stockées dans const mappedDatade FetchDataComponent.jsà ReactSelectComponent.js. Existe-t-il un moyen de le faire avec des composants fonctionnels ? Avec le code sous j'obtiensError: Objects are not valid as a React child

FetchDataComponent.js

import React,{useState, useEffect} from "react";
import axios from "axios";
import _ from "lodash";

const FetchDataComponent = () => {
    const [data, setData] = useState({product: []})
    useEffect(
        () => {
            (async () => {
                const result = await axios.get(
                    '/products-data'
                )
                setData(result.data)
            })()
        }, [])

    console.log("data.product:")
    console.log(data.product)

    const mappedData = _.map(data.product, "proizvod_naziv")
    console.log("mappedData:")
    console.log(mappedData)
    console.log(typeof mappedData)

    return ({mappedData});
}

export default FetchDataComponent;

ReactSelectComponent.js

import React, {useState} from "react";
import Select from "react-select";

const ReactSelectComponent = () => {

    // place for data from FetchDataComponent.js
    const options = [
        {
            // value: ,
            // label: 
        },
        {value: 'strawberry', label: 'Strawberry'},
        {value: 'vanilla', label: 'Vanilla'}
    ]

    return (<Select options={options}/>)

}
export default ReactSelectComponent;

console.log(mappedData):

(3) […]
​0: "M-Z-8Nm"
​1: "M-P-10Nm"
​2: "V-H"
​length: 3
​<prototype>: Array []

console.log (type de données mappées) :

object
Alex Wayne

FetchDataComponentn'est pas vraiment un composant de réaction puisqu'il ne rend rien. On dirait plutôt que c'est un crochet personnalisé. Pour en faire un crochet, faites simplement une fonction simple qui appelle d'autres crochets :

const useFetchedData = () => {
    const [data, setData] = useState({ product: [] })
    useEffect(
        () => {
            (async () => {
                const result = await axios.get(
                    '/products-data'
                )
                setData(result.data)
            })()
        }, [])

    const mappedData = _.map(data.product, "proizvod_naziv")

    return mappedData
}

export default useFetchedData;

Et maintenant, vous pouvez utiliser la valeur de retour de ce hook pour obtenir les données que vous voulez et les transmettre à d'autres composants.

const ReactSelectComponent = () => {
    const mappedData = useFetchedData()
    const options = mappedData.map(value => ({ value, label: value }))
    return (<Select options={options}/>)
}
export default ReactSelectComponent;

En savoir plus sur les crochets personnalisés ici.

Cet article est collecté sur Internet, veuillez indiquer la source lors de la réimpression.

En cas d'infraction, veuillez [email protected] Supprimer.

modifier le
0

laisse moi dire quelques mots

0commentaires
connexionAprès avoir participé à la revue

Articles connexes

Comment passer un objet d'une interface et un autre type à un composant fonctionnel dans React ?

Comment passer un objet comme accessoire à un composant fonctionnel enfant dans React.js?

Comment passer un composant de classe comme accessoire fonctionnel dans React?

Comment accéder à l'état d'un composant fonctionnel à partir d'un autre composant fonctionnel dans react-native ?

Passer un composant à un autre dans un tableau d'accessoires

Comment puis-je filtrer un tableau d'états dans un composant fonctionnel dans React Native

Passer un tableau d'états d'un composant à un autre dans React

Comment passer un tableau d'objets dans une application angulaire d'un composant à un autre

Comment passer un tableau à un autre composant ?

Comment passer un objet d'un tableau dans un composant?

Passer une fonction comme accessoire à un composant fonctionnel Typescript React

Comment passer la fonction en tant qu'accessoires d'un composant fonctionnel à un autre ?

Dans React, puis-je définir un composant fonctionnel dans le corps d'un autre composant fonctionnel?

comment définir displayName dans un composant fonctionnel [React]

Comment rendre un objet d'un tableau dans un autre composant dans React?

Comment passer des données d'un composant à un autre dans React ou React-Redux?

Comment affecter une réponse d'AXIOS à un tableau en état de composant fonctionnel (React Hooks)

Comment passer des données statiques d'un composant à un autre dans React ?

ReactJS - Comment supprimer un élément d'un tableau dans un composant fonctionnel?

Comment passer un composant comme accessoire à un autre composant dans Vue.js

Comment passer un tableau d'un composant parent à un composant enfant à l'aide d'accessoires dans React Native?

Définir l'état d'un composant fonctionnel de crochet dans un autre composant fonctionnel

Comment passer une valeur à un autre composant dans React

Comment passer une fonction à un autre composant dans React

Comment filtrer un élément d'un tableau dans l'état du composant fonctionnel React (To Do List)

Comment passer un identifiant unique comme accessoire à un autre composant

Comment définirState dans un tableau multidimensionnel d'objets via un composant fonctionnel

Comment passer des arguments pour fonctionner dans un composant fonctionnel dans React

Comment appeler un crochet RÉAGIR demande d'extraction dans un composant fonctionnel aux données d'accès puis passer à un composant de classe à la carte?

TOP liste

  1. 1

    comment afficher un bouton au-dessus d'un autre élément ?

  2. 2

    impossible d'obtenir l'image d'arrière-plan en plein écran dans reactjs

  3. 3

    Je continue à obtenir l'objet 'WSGIRequest' n'a pas d'attribut 'Get' sur django

  4. 4

    comment supprimer "compte de connexion google" à des fins de développement - actions sur google

  5. 5

    Conversion double en BigDecimal en Java

  6. 6

    Impossible d'accéder à la vue personnalisée pendant le test de l'interface utilisateur dans XCode

  7. 7

    Algorithme: diviser de manière optimale une chaîne en 3 sous-chaînes

  8. 8

    Passer la taille d'un tableau 2D à une fonction ?

  9. 9

    Comment obtenir l'intégration contextuelle d'une phrase dans une phrase à l'aide de BERT ?

  10. 10

    Comment changer le navigateur par défaut en Microsoft Edge pour Jupyter Notebook sous Windows 10 ?

  11. 11

    CSS: before ne fonctionne pas sur certains éléments,: after fonctionne très bien

  12. 12

    Comment créer un bot à compte à rebours dans Discord en utilisant Python

  13. 13

    Comment ajouter une entrée à une table de base de données pour une combinaison de deux tables

  14. 14

    Exporter la table de l'arborescence vers CSV avec mise en forme

  15. 15

    Comment activer le message Pylint "too-many-locals" dans VS Code?

  16. 16

    Créer un système Buzzer à l'aide de python

  17. 17

    Spring @RequestParam DateTime format comme ISO 8601 Date Heure facultative

  18. 18

    Empêcher l'allocation de mémoire dans la génération de combinaison récursive

  19. 19

    Déplacement des moindres carrés d'ajustement pour les déplacements de points ayant des problèmes

  20. 20

    Comment choisir le nombre de fragments et de répliques Elasticsearch

  21. 21

    Microsoft.WebApplication.targets

chaudétiquette

Archive