vue.js实现数据传递的demo

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

<div id="box">
    <aaa></aaa>
</div>
   
   
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3
<template id="aaa">
    <h1>模板aaa=>{{msg1}}</h1>   //msg1写在这里是可以的,因为这是父组件内部
    //<bbb>{{msg1}}</bbb>          //这种写法是不可以的,这是在子组件内部,要在这里显示父组件的数
                                //据,需要用props定义属性
    <bbb :m='msg1'></bbb>
</template>

   
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
var vm=new Vue({
    el:"#box",
    data () {
        a:'aaa'
    },
    components:{
        'aaa':{
            data () {
                msg1:'父组件的数据'
            },
            template:'#aaa',
            components:{
                'bbb':{
                //  props:['m'],       //这是一种写法,props以数组的形式定义属性
                props:{
                    'm':String           //这是第二种写法,对象的形式
                },
                    template:'<h3>这是子组件bbb--{{m}}</h3>'
                }
            }
        },
    }
})
   
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23

从这个例子中可以看出,父组件向子组件传递数据,因为每一个组件都是独立的作用域,所以要把父组件的数据在子组件中显示,要使用props定义属性来绑定父组件里面的数据才可以,如这里父组件的数据是msg1,用props定义一个属性m,来接收数据msg1;在子组件的模板里面用{{m}}的形式显示父组件的数据

0
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值