时间:2021-05-26
Vue.extend构造器的详解
1.简单介绍
Vue.extend(options)
参数:对象
用法:使用Vue构造器,创建一个“子类”,参数是一个包含组件选项的对象,其中,data选项中必须是函数
描述:Vue.extend返回的是一个“扩展实例构造器”,也就是预设了部分选项的Vue的实例构造器,它常常服务于Vue.component用来生成组件,可以简单理解为当在模板中遇到该组件作为标签的自定义元素时,会自动调用“扩展实例构造器”来生产组件实例,并挂在到自定义元素上
2.简单举例
自定义无参数标签
下面的代码中的author就是返回的“扩展实例构造器”
var author = Vue.extend({ template: "<p><a :href='url'>{{author}}</a></p>", data : function() { return { author : 'vamous', url : 'http://blog.csdn.net/Dear_Mr/article/details/72614370' } }});对应的html如下:
<author></author>此时的页面必然是没有任何效果的,因为扩展实例构造器还需要挂载,如下
new author().$mount('author');使用propsData
var author = Vue.extend({ template: "<p><a :href='url'>{{author}} & {{name}}</a></p>", data : function() { return { author : 'vamous', url : 'http://blog.csdn.net/Dear_Mr/article/details/72614370' } }, props : ['name']});new author({propsData: {name : 'dear_mr'}}).$mount('#author');可以利用propsData传递参数
挂载在普通标签上
返回的扩展实例构造器的方式和上面还是一样的,只是html里不再是自定义标签,而是一个普通标签,比如div
<div id="author"></div> new author().$mount('author');其实对于同一个扩展构造器而言,它的每一个实例其实是可以挂载到不同的标签上的,比如我可以这样
new author().$mount('#author');new author().$mount('author');这两个标签的内容会一同显示,结果一样
以上就是对Vue.extend构造器的实例详解,本站还有很多关于vue js开发的资料,欢迎大家搜索参阅,如有疑问请大家留言,共同进步,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
1.使用Vue.extend创建全局的Vue组件//1.1使用vue.extend创建组件varcom1=Vue.extend({//通过template属性指
创建组件的两种方法小结1.全局注册2.局部注册varchild=Vue.extend({})varparent=Vue.extend({})Vue.extend
下面讲一下如何定义动态组件。Vue.extend思路就是拿到组件的构造函数,这样我们就可以new了。而Vue.extend可以做到:https://cn.vue
本文通过Vue.extend创建组件构造器的方法写弹窗组件,供大家参考,具体内容如下alert.js文件代码importVuefrom'vue'//创建组件构造
本文介绍了vue父子组件的嵌套的示例代码,分享给大家,具体如下:组件的注册:先创建一个构造器varmyComponent=Vue.extend({templat