vue父子组件传值

7 篇文章 0 订阅

父向子传值: 子使用props接收父传递来的值
步骤:1. 先在父组件引入组件import son from ‘@/components/son.vue’;
2. 注册组件components:{‘v-son’:son}
3. 使用组件标签
4. 自定义属性绑定值
5. 在子组件中使用props接收传递过来的自定义属性 props: {toSonDate: String,},
6.在子组件中页面上应用{{ toSonDate }}

子传父:使用this. e m i t 触 发 传 递 步 骤 : 1. 先 引 入 组 件 i m p o r t s o n f r o m ′ @ / c o m p o n e n t s / s o n . v u e ′ ; 2. 注 册 组 件 c o m p o n e n t s : ′ v − s o n ′ : s o n 3. 使 用 组 件 标 签 &lt; v − s o n &gt; &lt; / v − s o n &gt; 在 子 组 件 绑 定 一 个 事 件 &lt; b u t t o n @ c l i c k = &quot; t o F a t h e r &quot; &gt; 爸 爸 再 给 点 钱 &lt; / b u t t o n &gt; 4. 在 这 个 事 件 方 法 中 使 用 t h i s . emit触发传递步骤: 1.先引入组件import son from &#x27;@/components/son.vue&#x27;; 2. 注册组件components:{&#x27;v-son&#x27;:son} 3. 使用组件标签&lt;v-son &gt;&lt;/v-son&gt;在子组件绑定一个事件 &lt;button @click=&quot;toFather&quot;&gt;爸爸再给点钱&lt;/button&gt; 4. 在这个事件方法中使用this. emit1.importsonfrom@/components/son.vue;2.components:vson:son3.使<vson></vson><button@click="toFather"></button>4.使this.emit监听 并且传递一个参数
toFather() {
//使用emit触发自定义事件并且传递一个参数
his.$emit(“toFather”,“爸爸不够用”)
}
5. 在父组件中绑定这个自定义方法名 然后自定义方法
@toFather="sendSon"6. 在父组件方法中接受参数、
6. sendSon(date){alert(“我是从儿子那里得到的方法”+date);}

父组件
<template>
 <view>
  <text>我是爸爸</text>
  <!-- //3.自定义属性绑定 --> 
  <!-- :toMethod="run"使用pros的方式子传父 -->
  <!-- @toFather="sendSon"使用emit方式子传父 -->
  <v-son :toSonDate="msg" :toMethod="run" @toFather="sendSon"></v-son>
 </view>
</template>
<script>
 //1.引入组件
 import son from '@/components/son.vue';
 export default {
  data() {
   return {
    msg:"零花钱"
   }
  },
  //2.注册组件     
  components:{
   'v-son':son
  },
  methods: {
   //接受子组件传递的参数
   run(date){
    alert("我是父组件中的方法"+date);
   },
   sendSon(date){
    alert("我是从儿子那里得到的方法"+date);
   }
  }
 }
</script>

子组件

<template>
 <view>
  <!-- //5.应用 -->
  我是儿子 爸爸给的{{ toSonDate }}
  <!-- 应用父组件传过来的自定义方法 子组件可以利用这个方法传参-->
  <button @click="toMethod(msg)">触发父组件的方法</button>
  <button @click="toFather">爸爸再给点钱</button>
 </view>
</template>
<script>
export default {
 data() {
  return {
   msg: '不够用'
  };
 },
 //4.使用props方法接受自定义属性
 // props:['toSonDate',"toMethod"] 方法一不能验证
 //方法二
 props: {
  toSonDate: String,
  toMethod: Function
 },
 methods: {
  toFather() {
   //使用emit触发自定义事件并且传递一个参数
   this.$emit("toFather","爸爸不够用")
  }
 }
};
</script>
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值