Maison > interface Web > js tutoriel > le corps du texte

Analyse sur la force du transfert de valeur entre les composants Vue

王雪芹
Libérer: 2020-08-12 11:58:35
original
1488 Les gens l'ont consulté

Lorsque nous commençons avec Vue, nous devons mentionner les composants. Dans certains cas, les composants doivent se transmettre des valeurs. Par exemple, le composant parent doit transmettre des valeurs au composant enfant et au composant enfant. Le composant enfant doit transmettre la valeur au composant parent. Ensuite, utilisez une force pour élaborer.

Effet :

Nous voulons obtenir un tel effet après avoir saisi du texte dans la zone de saisie et cliqué sur le bouton Soumettre, le contenu d'entrée correspondant apparaîtra ci-dessous. Si vous cliquez sur quelque chose, le contenu disparaît.

Comme indiqué ci-dessous, par exemple, lorsque nous cliquons sur 2, 2 disparaîtra

Analyse sur la force du transfert de valeur entre les composants Vue

Analyse :

1. Tout d'abord, nous allons obtenir le contenu d'entrée, collecter tout le contenu d'entrée dans un tableau et boucler les données dans

  • . Étant donné que
  • a la même structure, nous pouvons transformer
  • en un composant. Le tableau se trouve dans la couche parent et le composant
  • le composant enfant, cela signifie que le composant parent transmet les valeurs aux composants enfants et transmet les données aux composants enfants.

    2. Cliquez sur

  • une option et l'option disparaîtra. Ensuite, le composant
  • indiquera au composant parent vers le haut, lequel est actuellement cliqué et laquelle des données du tableau de la couche parent doit être supprimée. Il s'agit du sous-composant auquel la valeur est transmise. le composant parent.
    <div id="root">
            
            <input v-model="inputValue" />
            <button @click="handleSubmit">提交</button>
            
            <ul>
                <todo-item v-bind:content="item" 
                           v-bind:index="index" 
                           v-for="(item,index) in list"
                           @delete="handleItemDelete"
                ></todo-item>
            </ul>
        </div>
    
        <script>
    
            var TodoItem={
                props:[&#39;content&#39;,&#39;index&#39;],
                template:"<li @click=&#39;handleItemClick&#39;>{{content}}</li>",
                methods:{
                    handleItemClick:function(){
                        this.$emit(&#39;delete&#39;,this.index);
                    }
                }
            }
    
            new Vue({
                el:"#root", 
                data:{
                    inputValue:&#39;&#39;,
                    list:[]
                },
                components:{
                    &#39;TodoItem&#39;:TodoItem
                },
                methods:{
                    handleSubmit:function(){
                        this.list.push(this.inputValue)
                        this.inputValue = &#39;&#39;  //每次提交后清空
                    },
                    handleItemDelete:function(index){
                        this.list.splice(index,1);
                    }
                }
            })
        </script>
    Copier après la connexion

    Grâce au code, il n'est pas difficile de constater que le principal moyen pour les composants enfants de transmettre des valeurs aux composants parents est ici :

    this.$emit(&#39;delete&#39;,this.index);
    Copier après la connexion

    De plus, il devrait Notez que dans Vue, tout ce qui commence par $ est appelé propriétés ou méthodes d'instance vue. En plus de cela, vous devez également faire attention à certaines abréviations, telles que

    Recommandations associées : "Tutoriel JavaScript avancé"

    Ce qui précède est l'analyse de la force du transfert de valeur entre les composants de Vue Promotion et augmentation de salaire, tout le monde, allez. !

  • Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

    Étiquettes associées:
    source:php.cn
    Déclaration de ce site Web
    Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
    Tutoriels populaires
    Plus>
    Derniers téléchargements
    Plus>
    effets Web
    Code source du site Web
    Matériel du site Web
    Modèle frontal