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 相关文章推荐
javascript如何创建表格(javascript绘制表格的二种方法)
Dec 10 Javascript
js 操作select与option(示例讲解)
Dec 20 Javascript
jquery插件lazyload.js延迟加载图片的使用方法
Feb 19 Javascript
解决angular的$http.post()提交数据时后台接收不到参数值问题的方法
Dec 10 Javascript
关于cookie的初识和运用(js和jq)
Apr 07 Javascript
JS实现的样式切换功能tableCSS实例
Dec 30 Javascript
jQuery图片切换动画效果
Feb 28 Javascript
JavaScript简单拖拽效果(1)
May 17 Javascript
微信小程序使用for循环动态渲染页面操作示例
Dec 25 Javascript
详解JavaScript函数callee、call、apply的区别
Mar 08 Javascript
vue的列表交错过渡实现代码示例
May 05 Javascript
利用PHP实现递归删除链表元素的方法示例
Oct 23 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 empty函数判断mysql表单是否为空
2010/04/12 PHP
php警告Creating default object from empty value 问题的解决方法
2014/04/02 PHP
php使用simplexml_load_file加载XML文件并显示XML的方法
2015/03/19 PHP
PHP实现获取中英文首字母
2015/06/19 PHP
高质量PHP代码的50个实用技巧必备(上)
2016/01/22 PHP
解析PHP的Yii框架中cookie和session功能的相关操作
2016/03/17 PHP
PHP实现的统计数据功能详解
2016/12/06 PHP
Laravel框架中VerifyCsrfToken报错问题的解决
2017/08/30 PHP
Laravel模型事件的实现原理详解
2018/03/14 PHP
PHP实现数组根据某个单元字段排序操作示例
2018/08/01 PHP
两个SUBMIT按钮,如何区分处理
2006/08/22 Javascript
form中限制文本字节数js代码
2007/06/10 Javascript
jQuery 使用手册(七)
2009/09/23 Javascript
vue中渐进过渡效果实现
2016/10/27 Javascript
javaScript生成支持中文带logo的二维码(jquery.qrcode.js)
2017/01/03 Javascript
JS实现列表页面隔行变色效果
2017/03/25 Javascript
vue中将网页打印成pdf实例代码
2017/06/15 Javascript
JavaScript学习笔记之惰性函数示例详解
2017/08/27 Javascript
ES6 对象的新功能与解构赋值介绍
2019/02/05 Javascript
VUE中使用MUI方法
2019/02/12 Javascript
Vue中跨域及打包部署到nginx跨域设置方法
2019/08/26 Javascript
JS window对象简单操作完整示例
2020/01/14 Javascript
js实现轮播图效果 纯js实现图片自动切换
2020/08/09 Javascript
python逆向入门教程
2018/01/15 Python
Appium+python自动化之连接模拟器并启动淘宝APP(超详解)
2019/06/17 Python
sklearn和keras的数据切分与交叉验证的实例详解
2020/06/19 Python
CSS3,线性渐变(linear-gradient)的使用总结
2017/01/09 HTML / CSS
html5 桌面提醒:Notifycations应用介绍
2012/11/27 HTML / CSS
会议邀请函范文
2014/01/09 职场文书
《夏夜多美》教学反思
2014/02/17 职场文书
商务代表岗位职责
2015/02/15 职场文书
2016年校园重阳节广播稿
2015/12/18 职场文书
golang日志包logger的用法详解
2021/05/05 Golang
Python实现socket库网络通信套接字
2021/06/04 Python
JavaScript前端面试组合函数
2022/06/21 Javascript
IDEA中sout快捷键无效问题的解决方法
2022/07/23 Java/Android