Vue.extend 和 Vue.component 的区别是什么?

Vue.extendVue.component 都是用于创建 Vue 组件的方法,但它们的用途和使用方式有所不同:

  1. Vue.extend:这个方法用于创建一个 Vue 构造器,它接受一个对象作为参数,这个对象包含了这个 Vue 实例的选项。你可以使用 new 关键字来创建一个基于这个构造器的新实例。这个方法常用于创建可复用的组件。

    例如:

    var MyComponent = Vue.extend({
     template: '<div>Hello!</div>'
    })
    var component = new MyComponent().$mount('#app')
    
  2. Vue.component:这个方法用于全局注册一个组件,它接受两个参数:组件名和组件选项对象。注册之后,你就可以在任何地方使用这个组件了。这个方法常用于全局注册常用的组件。

    例如:

    Vue.component('my-component', {
     template: '<div>Hello!</div>'
    })
    

总的来说,Vue.extend 是用于创建 Vue 构造器的,你需要使用 new 关键字来创建一个基于这个构造器的实例。而 Vue.component 是用于全局注册组件的,注册之后你就可以在模板中直接使用这个组件了。

发表评论

后才能评论