zoukankan      html  css  js  c++  java
  • VUE组件之间传递数据

    本案例引用了bootsrap(搭建样式的),jquery(用bootstrap就必须引用jQuery),vue是必须的

    直接用案列来直接说明,

    子组件获取父组件的数据,就在子组件里面写‘props’,在html里面的父组件里面写<子组件的自定义组件名 :outer-data(props后面的函数名,函数必须是驼峰命名法的方式命名)="msg1(继承的父组件数据)"></p-app>

    兄弟组件之间获取数据,和父组件获取子组件的数据都是通过

    变量名:$on('函数名',function(){})

    vm.$emit('函数名',传的参数)的方式来完成组件之间的通信的,

    $emit是发射你要传出去的数据,$on是接收发出来的数据,先发射数据再接收数据,所以在写的过程中会使用到VUE生命周期的知识点,'https://cn.vuejs.org/v2/api/#选项-生命周期钩子'   如果不了解生命周期的话可以这官网看看,很容易就看明白的。

    兄弟组件之间传递数据时,this指向不准确,所以var一个空的数组去储存

    1、父获取子组件的数据

      html

    <!doctype html>
       <html lang="en">
       <head>
      <meta charset="UTF-8">
      <title>Document</title>
      <link rel="stylesheet" href="bootstrap/css/bootstrap.min.css"/>
     </head>
     <body>
         <div id="app">
                    <div-app></div-app>
         </div>
        <template id="div">
                    <div class="list-group">
                   <a href="#" class="list-group-item active">
       父元素
        <h1>{{msg1}}</h1>
            <p-app :outer-data="msg1"></p-app>
       </a>
      </div>
    </template>
    <template id="p">
    <ul class="list-group">
    <li class="list-group-item list-group-item-success">
    子元素
    <h2>{{msg}}</h2>
    <h3>{{outerData}}</h3>
    </li>
    </ul>
    </div>
    </template>
    </body>
    <script src="vue/vue.min.js"></script>
    <script src="jquery/jquery.min-v1.js"></script>
    <script src="bootstrap/js/bootstrap.min.js"></script>

    js代码

    window.addEventListener('load', function () {
    new Vue({
    el:'#app',
    components:{
    'div-app':{
    template:'#div',
    data:function(){
    return{
    msg1:'八戒八戒,傻得可爱'
    }
    },
    components:{
    'p-app':{
    template:'#p',
    data:function(){
    return{
    msg:'八戒的儿砸'
    }
    },
    //props:['outerData']
    props:{
    outerData:{
    type:String,//数据类型
    default:''//设置初始值
    }
    }
    }
    }
    }
    }
    })
    });

    子获取父

    html

    js

    兄弟之间获取数据

     html

    js

     

  • 相关阅读:
    go 异常处理
    win10一行代码搭建本地html项目
    github搭建html网站到外网
    python生成动态个性二维码
    python+selenium通过加载用户配置实现免登陆
    python搭建本地共享文件服务器
    python画猫并打包成EXE文件
    python批量爬取猫咪图片
    解决-Chrome插件安装时程序包无效:"CRX_HEADER_INVALID"的错误
    移动自动化测试框架--openatx
  • 原文地址:https://www.cnblogs.com/wen936/p/7920275.html
Copyright © 2011-2022 走看看