Vue.extend构造器的详解


Posted in Javascript onJuly 17, 2017

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开发的资料,欢迎大家搜索参阅,如有疑问请大家留言,共同进步,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Javascript 相关文章推荐
jQuery 对象中的类数组操作
Apr 27 Javascript
javascript实现实时输出当前的时间
Apr 27 Javascript
在AngularJS中使用jQuery的zTree插件的方法
Apr 21 Javascript
详解JavaScript中Hash Map映射结构的实现
May 21 Javascript
bootstrap table 表格中增加下拉菜单末行出现滚动条的快速解决方法
Jan 05 Javascript
用JavaScript实现让浏览器停止载入页面的方法
Jan 19 Javascript
html5+canvas实现支持触屏的签名插件教程
May 08 Javascript
深入理解vue-router之keep-alive
Aug 31 Javascript
Vue2几种常见开局方式详解
Sep 09 Javascript
javascript基于定时器实现进度条功能实例
Oct 13 Javascript
js中事件对象和事件委托的介绍
Jan 21 Javascript
小程序实现列表倒计时功能
Jan 29 Javascript
原生js实现密码输入框值的显示隐藏
Jul 17 #Javascript
extjs简介_动力节点Java学院整理
Jul 17 #Javascript
jQuery Autocomplete简介_动力节点Java学院整理
Jul 17 #jQuery
jQuery Pagination分页插件_动力节点Java学院整理
Jul 17 #jQuery
jQuery Form插件使用详解_动力节点Java学院整理
Jul 17 #jQuery
jQuery列表检索功能实现代码
Jul 17 #jQuery
React Native实现进度条弹框的示例代码
Jul 17 #Javascript
You might like
php代码优化及php相关问题总结
2006/10/09 PHP
IIS+PHP+MySQL+Zend配置 (视频教程)
2006/12/13 PHP
PHP回调函数概念与用法实例分析
2017/11/03 PHP
PHP排序二叉树基本功能实现方法示例
2018/05/26 PHP
本地对象Array的原型扩展实现代码
2010/12/04 Javascript
JS实现的一个简单的Autocomplete自动完成例子
2014/04/16 Javascript
jQuery中$.get、$.post、$.getJSON和$.ajax的用法详解
2014/11/19 Javascript
JS是按值传递还是按引用传递
2015/01/30 Javascript
JS获取图片高度宽度的方法分享
2015/04/17 Javascript
基于jQuery实现自动轮播旋转木马特效
2015/11/02 Javascript
Jquery时间轴特效(三种不同类型)
2015/11/02 Javascript
jquery 无限极下拉菜单的简单实例(精简浓缩版)
2016/05/31 Javascript
jQuery复制节点用法示例(clone方法)
2016/09/08 Javascript
JS实现的简单拖拽功能示例
2017/03/13 Javascript
解决webpack -p压缩打包react报语法错误的方法
2017/07/03 Javascript
Laravel整合Bootstrap 4的完整方案(推荐)
2018/01/25 Javascript
jQuery访问json文件中数据的方法示例
2019/01/28 jQuery
一些可能会用到的Node.js面试题
2019/06/15 Javascript
解决使用layui对select append元素无效或者未及时更新的问题
2019/09/18 Javascript
python3.3教程之模拟百度登陆代码分享
2014/01/16 Python
scrapy自定义pipeline类实现将采集数据保存到mongodb的方法
2015/04/16 Python
Python模拟三级菜单效果
2017/09/11 Python
Python3 中把txt数据文件读入到矩阵中的方法
2018/04/27 Python
Python图像处理之识别图像中的文字(实例讲解)
2018/05/10 Python
APIStar:一个专为Python3设计的API框架
2018/09/26 Python
使用Python计算玩彩票赢钱概率
2019/06/26 Python
解决Python中pandas读取*.csv文件出现编码问题
2019/07/12 Python
pandas的to_datetime时间转换使用及学习心得
2019/08/11 Python
韩国三大免税店之一:THE GRAND 中文免税店
2016/07/21 全球购物
澳大利亚潮流尖端的快时尚品牌:Cotton On
2016/09/26 全球购物
电子商务专业学生的自我鉴定
2013/11/28 职场文书
新春联欢会主持词
2014/03/24 职场文书
供货协议书
2014/04/22 职场文书
会计试用期自我评价怎么写
2014/09/18 职场文书
护士个人年终总结
2015/02/13 职场文书
Redis如何使用乐观锁(CAS)保证数据一致性
2022/03/25 Redis