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 相关文章推荐
ASP.NET jQuery 实例1(在TextBox里面创建一个默认提示)
Jan 13 Javascript
jquery批量设置属性readonly和disabled的方法
Jan 24 Javascript
Jquery Easyui进度条组件Progress使用详解(8)
Mar 26 Javascript
微信小程序页面滑动屏幕加载数据效果
Nov 16 Javascript
node.js学习之断言assert的使用示例
Sep 28 Javascript
在react-router4中进行代码拆分的方法(基于webpack)
Mar 08 Javascript
Js经典案例的实例代码
May 10 Javascript
laravel-admin 与 vue 结合使用实例代码详解
Jun 04 Javascript
解决React在安装antd之后出现的Can't resolve './locale'问题(推荐)
May 03 Javascript
查找Vue中下标的操作(some和findindex)
Aug 12 Javascript
可拖拽组件slider.js使用方法详解
Dec 04 Javascript
关于Javascript闭包与应用的详解
Apr 22 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
Syphon 秘笈
2021/03/03 冲泡冲煮
写一个用户在线显示的程序
2006/10/09 PHP
ThinkPHP 连接Oracle数据库的详细教程[全]
2012/07/16 PHP
解析PHP函数array_flip()在重复数组元素删除中的作用
2013/06/27 PHP
PHP 面向对象程序设计(oop)学习笔记(三) - 单例模式和工厂模式
2014/06/12 PHP
Ajax中的JSON格式与php传输过程全面解析
2017/11/14 PHP
Laravel 添加多语言提示信息的方法
2019/09/29 PHP
Prototype使用指南之enumerable.js
2007/01/10 Javascript
基于Jquery的简单&amp;简陋Tabs插件代码
2010/02/09 Javascript
Jquery CheckBox全选方法代码附js checkbox全选反选代码
2010/06/09 Javascript
jQuery Masonry瀑布流插件使用详解
2014/11/17 Javascript
JavaScript内存管理介绍
2015/03/13 Javascript
JavaScript的jQuery库插件的简要开发指南
2015/08/12 Javascript
Html中 IFrame的用法及注意点
2016/12/22 Javascript
网页中右键功能的实现方法之contextMenu的使用
2017/02/20 Javascript
AngularJS 控制器 controller的详解
2017/10/17 Javascript
mongoose设置unique不生效问题的解决及如何移除unique的限制
2017/11/07 Javascript
Javascript中的作用域及块级作用域
2017/12/08 Javascript
jQuery实现checkbox全选、反选及删除等操作的方法详解
2019/08/02 jQuery
一次微信小程序内地图的使用实战记录
2019/09/09 Javascript
vue父组件给子组件的组件传值provide inject的方法
2019/10/23 Javascript
[05:06]2017亚洲邀请赛DAC回顾片
2017/04/19 DOTA
python使用socket向客户端发送数据的方法
2015/04/29 Python
Python提取网页中超链接的方法
2016/09/18 Python
python机器学习理论与实战(二)决策树
2018/01/19 Python
python通过伪装头部数据抵抗反爬虫的实例
2018/05/07 Python
Python使用APScheduler实现定时任务过程解析
2019/09/11 Python
Python绘制三角函数图(sin\cos\tan)并标注特定范围的例子
2019/12/04 Python
Pandas读取csv时如何设置列名
2020/06/02 Python
python suds访问webservice服务实现
2020/06/26 Python
Python绘制词云图之可视化神器pyecharts的方法
2021/02/23 Python
初中三好学生事迹材料
2014/01/13 职场文书
高中课前三分钟演讲稿
2014/09/13 职场文书
办公楼租房协议书范本
2014/11/25 职场文书
骨干教师个人总结
2015/02/11 职场文书
Python音乐爬虫完美绕过反爬
2021/08/30 Python