vue 之extends的使用方法总结

vue extends 和extend的使用方法总结

作用:都是扩展vue组件时使用
通过外部增加对象的形式,对构造器进行扩展。由于它接收的参数是简单的选项对象或构造函数,所以extends只能单次扩展一个组件。

import Vue from 'vue'
const comp={//声明第一个对象comp
  props:{
    active:Boolean,
    propOne:String
  },
  template:`<div>
    <input type='text' v-model="a">
    <span @click="handl">{{propOne}}</span>
    <span v-if="active">134</span>
  </div>`,
  data(){
    return {
      a:0
    }
  },
  methods:{
    handl(){
      // this.onChange()
      this.$emit('changea')
    }
  }
}
const comp2={//声明第二个对象comp2
    extends:comp,//通过extends继承comp
    data(){
        return{
            a:100
        }
    }
}

new Vue({
    el:'#test',
    components:{//注册组件到vue实例中
        com:comp2
    },
    template:'<com></com>'
})

下面是extend的代码

import Vue from 'vue'

const comp={//声明一个对象comp
  props:{
    active:Boolean,
    propOne:String
  },
  template:`<div>
    <input type='text' v-model="a">
    <span @click="handl">{{propOne}}</span>
    <span v-if="active">134</span>
  </div>`,
  data(){
    return {
      a:0
    }
  },
  methods:{
    handl(){
      // this.onChange()
      this.$emit('changea')
    }
  }
}
const CompVue=Vue.extend(comp)//compVue 继承comp组件
new CompVue({//实例化组件
    el:'#test',
    propsData:{
        propOne:"xxx"
    },
    data(){
        return{
            a:30
        }
    }
})
new Vue({
  • 3
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值