0
votes

Vuejs n'est pas actualisé d'autres composants

J'ai deux composants. Composant 1:

<template>
<div class="container">
    <div class="row justify-content-center">
        <div class="col-md-8">
            <div class="card card-default">
                <div class="card-header">Example Component</div>

                <div class="card-body">
                    I'm an example component.
                </div>
            </div>
            </div>
        </div>
    </div>
</template>
<script>
    export default {
        props: ['categoryId'],
        data () {
         return {
           category_ids: this.categoryId
        }
        },
        created() {
        axios.post('/tags', { category_id: this.categoryId })
          .then((response) => {
              this.tags = response.data;
          })
          .catch((err) => {

          })
        }
    }
</script>


2 commentaires

Comment sont-ils liés les uns aux autres? Est-ce qu'ils sont des composants de soeur? Parent et enfant?


alligator.io/vuejs/global-event-bus


3 Réponses :


-1
votes

Je suppose que le problème est avec le nom catégorie_id dans le deuxième composant, il devrait être 'ID de catégorie-id' ou CatégorieId .


2 commentaires

Non, cela ne fonctionne pas. Lorsque je sélectionne une option, sur la seconde sélection de composants n'est pas mise à jour


Enregistrez-vous les composants correctement? Essayez d'afficher l'attribut du parent dans un composant enfant. Peut-être essayez peut-être de passer de globalement enregistré au composant enregistré localement.



-1
votes

Le problème à laquelle je pense est avec le nom de vos accessoires. Dans le composant 1, vous passez des données sur ProP ID de catégorie-ID CODE>

props: ['categoryId'],


5 commentaires

ne fonctionne pas ... :( sur Onchanange Select, les données ne sont pas affichées


OUI VUE.COMPONENT ('TAGS-MULTISELLECT', nécessite ('./ composants / tagselectComponent.vue'). Par défaut);


J'ai ajouté un tremblant de démonstration, voyez si cela vous aide à sortir.


@waleedali sur monté Méthode ne fonctionne pas :) Essayez do console.log (CatégorieId) Intérieur Monté


Tout d'abord, c'est console.log (this.categoryId) vous manquez ceci ici. Deuxièmement, cette fonction / crochet montée ne sera appelée une seule fois (au moment de la montage du composant) et il y a une chance plus élevée que, puisque le CatégorieId est transmis comme un accessoire à la composante enfant, Il apparaît non défini à ce moment-là. Si vous souhaitez consoler Connectez-vous à chaque fois que la propriété des parents change, envisagez d'utiliser Mise à jour () Crochet au lieu de monté ()



0
votes

Il y a quelques choses qui devaient être corrigées pour que votre code fonctionne correctement. Premièrement, sur le composant parent, vous pouvez supprimer le V-modèle = "Catégorie" code> et modifier le @ Modifier = "SetCategory (catégorie)" code> sur @ modification = "SetCategory" code>

Votre SELECT sera:


0 commentaires