牛骨文教育服务平台(让学习变的简单)
博文笔记

vue组件之间的传值

创建时间:2017-04-24 投稿人: 浏览次数:2656

slot标签:
想向封装好结构的组件中插入内容,需要借助<slot></slot>
在组件之中进行关联:如
模板中:<slot name="txt"></slot>
组件调用中:<p slot="txt"></p>
注:如果只有slot上面每一定义name属性,则只能有一个slot

<div class="box">
    <com>
        <p slot="txt"></p>  
    </com>
</div>  
<template id="c">
    <div>
        <slot name="txt"></slot>    
    </div>
</template>

Vue.component("com",{
    template:"#c"
})

父组件向子组件传值:props
父组件:

<template>
    <child :parent-msg="a"></child>
</template>

子组件:

child:{
    template:‘#chi’
    props:["parentMsg"]
}

子组件向父组件的传值:
vue只运行数据的单选传递,在子组件向父组件的传值中,需要事件触发
子组件:

<template>
    <div @click="up"></div>
</template> 

methods:{
 up(){
    this.$emit("fn","msg") // 主动触发fn方法,msg是需要传递的数据 
 }
}

父组件:

<div>
    <child @fn="getval"></child>
</div>

methods:{
    getval(msg){ // msg接收到的数据
        this.msg=msg
    }
}
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。