zoukankan      html  css  js  c++  java
  • vue2.0的父子组件数据传递

    看了好久的vue,终于弄懂了父子组件是怎样传递数据的,期中,我看了官网还是不懂,最终看了智能社陈潇冰老师的视频,恍然大悟,此刻,在这里,超级谢谢陈潇冰老师。

    大家都知道,父子组件的作用域是相互独立的,那么父子组件又是怎样通信的呢。VUE官网上说,父组件向子组件传递数据使用props选项,而子组件通过events事件触发,发送数据给父组件

    1.父组件向子组件传递数据

       首先引入vue.js(这里是2.2.0版本) 先将父子组件的内容展示出来

       <div id="box">

       <parent></parent>

     </div>

      <template id="parent"> //父组件内容

      <div> //此处元素有且只有一个,2.0以上版本规定,组件的根元素有且只有一个
        <div style="border:1px solid red; 300px;">
          <h1>父组件</h1>
          <p>{{parentMsg}}</p>
        </div>
        <child></child>
      </div>

     </template>


       <template id="child">  //子组件内容

      <div> //此处元素有且只有一个,2.0以上版本规定,组件的根元素有且只有一个
        <h1>子组件</h1>
        <p>{{childMsg}}</p>
      </div>

     </template>

       <script>

      var child={
        data(){
          return {
            childMsg:"我是子组件数据"
          }
        },
        template:"#child"
      }

      var parent={

        data(){
          return {
            parentMsg:"我是父组件的数据"
          }
        },

        components:{
          'child':child
        }

      new Vue({
        el:"#box",
        components:{
          'parent':parent
        }
      });

     </script>

       以下是浏览器渲染的效果图:

    现在我想,让子组件获取到父组件中parentMsg数据,只需两步:

    1.父组件将数据传递给props桥梁

    2.props将数据传递给子组件

     所以,首先,子组件要声明自己需要父组件的哪个数据,

    <template id="parent"> //父组件内容
      <div>
        <div style="border:1px solid red; 300px;">
          <h1>父组件</h1>
          <p>{{parentMsg}}</p>
        </div>
        <child :get-parent="parentMsg"></child>  //通过get-parent属性绑定父组件的parentMsg数据
      </div>
    </template>

    var child={
        data(){
          return {
            childMsg:"我是子组件数据"
          }
      },
      props:['getParent'],  //通过props声明自己所要的数据
      template:"#child"
    }

    在子组件中调用父组件数据

    <template id="child">  //子组件内容
      <div>
        <h1>子组件</h1>
        <p>{{childMsg}}</p>
        <p style="color:green">获取父组件的数据-->{{getParent}}</p>
      </div>
    </template>

     然后浏览器的渲染结果如下:

    红色箭头处 就睡获取到的父组件数据

    今天就先说到这里,只讲了父组件向子组件传递数据,接下里会说子组件向组件传递数据,欢迎喷子们喷我哦

  • 相关阅读:
    leetcode 62. Unique Paths
    leetcode 345. Reverse Vowels of a String
    leetcode 344. Reverse String
    Centos7.4 kafka集群安装与kafka-eagle1.3.9的安装
    yarn调度器 FairScheduler 与 CapacityScheduler
    Hive性能优化
    HBase笔记
    Zookeeper笔记
    Hadoop组件详解(随缘摸虾)
    ubuntu18.04.2 hadoop3.1.2+zookeeper3.5.5高可用完全分布式集群搭建
  • 原文地址:https://www.cnblogs.com/yuershuo/p/6913155.html
Copyright © 2011-2022 走看看