Vue组件间数据的传递

  • 通过 Prop 向子组件传递数据
// 父组件
<Child :message='123'></Child> // 绑定一个属性
<!--子组件-->
<template>
    <div>
        <h2>{{msg}}</h2>
        <span>{{ message }}</span> <!--展示接收属性的值-->
    </div>    
</template>
<script>
    export default {
        name: 'child',
        props: ['message'], // 接收message属性
        data(){
            return {
                msg:'这是子组件'
            }
        }
    }
</script>
  • 通过事件向父组件发送消息
<!--子组件-->
<template>
    <div>
        <h2>{{msg}}</h2>
         <!--点击事件,通过 $emit 方法传入事件的名字,向父组件出发一个事件-->
        <span v-on:click="$emit('enlarge',1)">{{ message }}</span>
    </div>    
</template>
<script>
    export default {
        name: 'child',
        props: ['message'],// 接收message属性
        data(){
            return {
                msg:'这是子组件'
            }
        }
    }
</script>
<!--父组件-->
<template>
  <div class="hello" >
    <div >
      <h1>{{ msg }}--{{postFontSize}}</h1>
      <!--v-on 监听这个事件,实现对父组件数据的改变-->
      <Child v-on:enlarge="postFontSize+=$event" :message='123'></Child>     
    </div>
  </div>
</template>

<script>
import Child from '@/components/Child'
export default {
  name: 'HelloWorld',
  data () {
    return {
      msg: '这是父组件',
      postFontSize: 1
    }
  },
  components: {
    Child
  }
}
</script>
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 序 今年大前端的概念一而再再而三的被提及,那么大前端时代究竟是什么呢?大前端这个词最早是因为在阿里内部有很多前端开...
    一缕殇流化隐半边冰霜阅读 11,300评论 19 92
  • 此文基于官方文档,里面部分例子有改动,加上了一些自己的理解 什么是组件? 组件(Component)是 Vue.j...
    陆志均阅读 3,885评论 5 14
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,292评论 19 139
  • 酒 是男人的面具妆 是女人的面具佛 是僧人的面具诗 是文人的面具 我也天天带着面具从不敢裸奔于天地直到遇见了你我的...
    曹望尘阅读 234评论 0 6
  • 人生不易, 生活更难, 想要好好生存, 就必须先要学会好好珍惜身边的人和事! 时光匆匆, 青春不在。 那时你会发现...
    白光颖阅读 674评论 0 0