vue组件复用 props 传值 (父传子)

公共组件具有更好的复用性,当然,要根据实际情况选择全局或局部组件。

全局组件

  1. props:['init'] 可以以数组的形式定义
  2. props:{init:{type:"类型",default:"默认值",required:"是否必传"}}
  • 全局组件注册
    //在 main.js 中引入全局公用组件Count.vue
    import Count from '@/components/Count.vue'

    Vue.component('MyCount',Count) //组件名为 MyCount

  • 引入使用
<template>
  <div class="about">
    <h1>This is an about page</h1>
    <MyCount :init="1"></MyCount>
    <!-- init 为自定义名 传入数字 1 -->
  </div>
</template>
  • 全局组件
<template>
  <div>
    我是全局组件
    <hr />
    {{ init }}-----{{ ab }}----{{ count }}
    <button @click="count += 10">按钮</button>
  </div>
</template>
<script>
    export default {
      name: "",
      props: {
        init: {
          default: 0,
        },
        ab: {
          type: String, //规定传入类型
          default: "2",//默认值
          required: true,//必传
        },
      },
      data() {
        return {
          count: this.init,//如果要修改props 的值只能通过这种弄形式,因为props是只读的
        };
      },
    };
</script>

局部组件

<template>
  <div class="about">
    <h1>This is an about page</h1>
    <MyCount :init="1"></MyCount>
    <!-- init 为自定义名 传入数字 1 -->
  </div>
</template>
<script>
    components:{
        MyCount
    }
<script>

-----不详之处请多多指教!

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值