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 相关文章推荐
让广告代码不再影响你的网页加载速度
Jul 07 Javascript
javascript向flash swf文件传递参数值注意细节
Dec 11 Javascript
jquery实现微博文字输入框 输入时显示输入字数 效果实现
Jul 12 Javascript
jQuery原理系列-常用Dom操作详解
Jun 07 Javascript
使用BootStrap和Metroui设计的metro风格微网站或手机app界面
Oct 21 Javascript
JavaScript实现简易的天数计算器实例【附demo源码下载】
Jan 18 Javascript
Angular 4依赖注入学习教程之Injectable装饰器(六)
Jun 04 Javascript
Angular项目从新建、打包到nginx部署全过程记录
Dec 09 Javascript
详解微信小程序审核不通过的解决方法
Jan 17 Javascript
分享5个好用的javascript文件上传插件
Sep 16 Javascript
vue中使用codemirror的实例详解
Nov 01 Javascript
JS实现京东商品分类侧边栏
Dec 11 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
BBS(php &amp; mysql)完整版(五)
2006/10/09 PHP
PHP生成不重复随机数的方法汇总
2014/11/19 PHP
PHP模拟QQ登录的方法
2015/07/29 PHP
PHP中include/require/include_once/require_once使用心得
2016/08/28 PHP
JS与C#编码解码
2013/12/03 Javascript
jQuery移除tr无效的解决方法(tr是动态添加)
2014/09/22 Javascript
jQuery中ajax和post处理json的不同示例对比
2014/11/02 Javascript
浅谈JSON中stringify 函数、toJosn函数和parse函数
2015/01/26 Javascript
jquery实现美观的导航菜单鼠标提示特效代码
2015/09/06 Javascript
jQuery+Ajax实现无刷新分页
2015/10/30 Javascript
jQuery插件passwordStrength密码强度指标详解
2016/06/24 Javascript
JS提示:Uncaught SyntaxError: Unexpected token ILLEGAL错误的解决方法
2016/08/19 Javascript
原生js代码实现图片放大境效果
2016/10/30 Javascript
详解浏览器渲染页面过程
2017/02/09 Javascript
JS中实现函数return多个返回值的实例
2017/02/21 Javascript
angular 基于ng-messages的表单验证实例
2017/05/04 Javascript
解决JS内存泄露之js对象和dom对象互相引用问题
2017/06/25 Javascript
JS生成随机打乱数组的方法示例
2017/12/23 Javascript
解决koa2 ctx.render is not a function报错问题
2018/08/07 Javascript
vue+elementUi 实现密码显示/隐藏+小图标变化功能
2020/01/18 Javascript
Vant 在vue-cli 4.x中按需加载操作
2020/11/05 Javascript
javascript实现电商放大镜效果
2020/11/23 Javascript
Python实现二叉搜索树
2016/02/03 Python
基于Python List的赋值方法
2018/06/23 Python
浅析python中numpy包中的argsort函数的使用
2018/08/30 Python
python框架flask入门之路由及简单实现方法
2020/06/07 Python
python3.8动态人脸识别的实现示例
2020/09/21 Python
英国最大的天然和有机产品在线零售商之一:Big Green Smile
2020/05/06 全球购物
大学四年职业生涯规划书范文
2014/01/02 职场文书
新年团拜会主持词
2014/04/02 职场文书
党员批评与自我批评发言材料
2014/10/14 职场文书
房产公证书
2015/01/23 职场文书
结婚保证书(三从四德)
2015/02/26 职场文书
初中数学课堂教学反思
2016/02/17 职场文书
创业不要错过,这4种餐饮新模式
2019/07/18 职场文书
Redis分布式锁Redlock的实现
2021/08/07 Redis