Maison > interface Web > js tutoriel > Les composants enfants et parents de Vue se transmettent des données (code joint)

Les composants enfants et parents de Vue se transmettent des données (code joint)

php中世界最好的语言
Libérer: 2018-06-07 10:48:07
original
1319 Les gens l'ont consulté

Cette fois, je vais vous présenter le transfert de données entre les composants enfants et parents de Vue (avec code). Quelles sont les précautions à prendre pour que les composants enfants et parents de Vue se transfèrent des données entre eux ? Ce qui suit est un cas pratique, prenons un exemple : regarder.

Nous expliquons ici les méthodes courantes utilisées par les composants enfants pour transmettre des valeurs aux composants parents. Ici, je vais vous en expliquer le principe à travers un exemple d’addition et de soustraction.

Comme indiqué ci-dessous :

Lorsqu'il n'y a aucune opération, la valeur du composant parent est 0

Les composants enfants et parents de Vue se transmettent des données (code joint)

Lorsque le signe plus est cliqué, le composant parent La valeur du composant est 1

Les composants enfants et parents de Vue se transmettent des données (code joint)

Lorsque l'on clique sur le signe moins, la valeur du composant parent est réduite de un et devient 0

Les composants enfants et parents de Vue se transmettent des données (code joint)

Je posterai directement le code spécifique, il vient de sortir.

nbsp;html>


  <meta>
  <meta>
  <meta>
  <title>子组件将数据传递给父组件</title>
  <script></script>

<script>
//定义一个组件
Vue.component(&#39;counter&#39;, {
 template: &#39;\
    <p style="background:#eee;width: 238px;">\
        <p>这里是子组件里面的内容!\
        <p style="margin-top:20px">\
        <p>\
          <span style="margin-right:20px;display:inline-block;">加法运算<button @click="incrementCounter">+\
        \
        <p>\
          <span style="margin-right:20px;margin-top:20px;display:inline-block;">减法运算<button @click="deleteCounter">-\
        \
    \
  &#39;,
 data: function () {
  return {
   counter: 0
  }
 },
 methods: {
  incrementCounter: function () {
   this.counter += 1;
   this.$emit(&#39;increment&#39;,1);
  },
  deleteCounter: function () {
   this.counter -= 1;
   this.$emit(&#39;increment&#39;,2);
  }
 }
})
//执行一个组件
window.onload = function(){
  var app = new Vue({
    el: &#39;#app&#39;,
    data: {
      total: 0
    },
    methods:{
      incrementTotal: function (val) {
        if(val==1){
          this.total += 1;
        }else{
          if(this.total<=0){
            this.total = 0;
          }else{
            this.total -= 1;
          }
        }
      }
    }
  })
}
</script>

  <p>
    </p><p>这里是父组件里面的内容!</p>    
    <p>子组件传递的值:<b>{{ total }}</b></p>
    <counter></counter>
  

Copier après la connexion

Je pense que vous maîtrisez la méthode après avoir lu le cas dans cet article. Pour des informations plus intéressantes, veuillez prêter attention aux autres articles connexes sur le site Web chinois de php !

Lecture recommandée :

vue.js+element-ui pour créer une arborescence de menu

Comment faire fonctionner Vue Hors proxy

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:
vue
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