vue.extend与vue.component的区别和联系


Posted in Javascript onSeptember 19, 2018

如果大家只顾开发,对基础知识不了解,在今后的解决问题过程中,也是个大问题,今天小编抽空对基础概念给大家屡一下,用于大家日后学习。

Vue.extend({})简述:使用vue.extend返回一个子类构造函数,也就是预设部分选项的vue实例构造器。

后可使用vue.component进行实例化、或使用new extendName().$mount(''+el)方式进行实例化(从而实现模拟组件)。

vue.extend与vue.component的区别和联系

Vue.component({})简述:不多介绍了。。。用于生成全局组件

使用:

1,Vue.component使用Vue.extend生成的构造函数:

vue.extend与vue.component的区别和联系

2,实例化构造函数从而模拟组件:

vue.extend与vue.component的区别和联系

vue.extend与vue.component的区别总结

在Vue.js中,Vue本身是一个constructor。

Vue.extend() 是一个继承于方法的 class,参数是一个包含组件选项的对象。它的目的是创建一个Vue的子类并且返回相应的 constructor。

而Vue.component()实际上是一个类似于Vue.directive() 和 Vue.filter()的注册方法,它的目的是给指定的一个constructor一个String类型的ID,

之后Vue.js可以把它用作模板,实际上当你直接传递选项给Vue.component()的时候,它会在背后调用Vue.extend()。

Vue.js支持两种不同的API模型:一种是基于类的,命令式的,Backbone 类型的API;另一种是基于标记语言的,声明式的,Web组件类型的API。

如果还是困惑的话,可以想象你是怎么创建通过new Image()或者 <img>标签创建 image元素的就知道了。

这两种方法都对指定的类型很有用,Vue.js提供这两者只是为了更好的灵活性。

下面看下vue.extend,new vue 和vue.component的区别

extend 是构造一个组件的语法器. 你给它参数 他给你一个组件 然后这个组件

你可以作用到Vue.component 这个全局注册方法里, 也可以在任意vue模板里使用apple组件

var apple = Vue.extend({ …. }) Vue.component(‘apple',apple)

你可以作用到vue实例或者某个组件中的components属性中并在内部使用apple组件

new Vue({ components:{ apple:apple } })

Vue.component 你可以创建 ,也可以取组件 例如下

var apple = Vue.component(‘apple') 而new vue 是新建一个vue对象 所以可以理解为new vue < vue.extand < vue.component

Javascript 相关文章推荐
jQuery select操作控制方法小结
May 26 Javascript
js单向链表的具体实现实例
Jun 21 Javascript
JavaScript常用小技巧小结
Dec 29 Javascript
jQuery构造函数init参数分析
May 13 Javascript
手机开发必备技巧:javascript及CSS功能代码分享
May 25 Javascript
js变形金刚文字特效代码分享
Aug 20 Javascript
js仿QQ中对联系人向左滑动、滑出删除按钮的操作
Apr 07 Javascript
DOM操作和jQuery实现选项移动操作的简单实例
Jun 07 Javascript
xmlplus组件设计系列之图标(ICON)(1)
May 05 Javascript
js中apply()和call()的区别与用法实例分析
Aug 14 Javascript
vue路由事件beforeRouteLeave及组件内定时器的清除方法
Sep 29 Javascript
基于JS实现简单滑块拼图游戏
Oct 12 Javascript
webpack+vue+express(hot)热启动调试简单配置方法
Sep 19 #Javascript
自己动手封装一个React Native多级联动
Sep 19 #Javascript
vue中如何实现后台管理系统的权限控制的方法示例
Sep 19 #Javascript
5分钟快速掌握JS中var、let和const的异同
Sep 19 #Javascript
vue-cli整合vuex的时候,修改actions和mutations,实现热部署的方法
Sep 19 #Javascript
node.js环境搭建图文详解
Sep 19 #Javascript
老生常谈JavaScript获取CSS样式的方法(兼容各浏览器)
Sep 19 #Javascript
You might like
smarty 原来也不过如此~~呵呵
2006/11/25 PHP
PHP 和 MySQL 开发的 8 个技巧
2007/01/02 PHP
获取远程文件大小的php函数
2010/01/11 PHP
PHP中ini_set和ini_get函数的用法小结
2014/02/18 PHP
php获取指定范围内最接近数的方法
2015/06/02 PHP
详解PHP的Yii框架中日志的相关配置及使用
2015/12/08 PHP
详解php中 === 的使用
2016/10/24 PHP
JavaScript 题型问答有答案参考
2010/02/17 Javascript
Javascript 面向对象编程(一) 封装
2011/08/28 Javascript
轻松创建nodejs服务器(6):作出响应
2014/12/18 NodeJs
利用HTML5的画布Canvas实现刮刮卡效果
2015/09/06 Javascript
javascript运动效果实例总结(放大缩小、滑动淡入、滚动)
2016/01/08 Javascript
浅析Javascript ES6新增值比较函数Object.is
2016/08/24 Javascript
javascript实现的左右无缝滚动效果
2016/09/19 Javascript
JavaScript实现窗口抖动效果
2016/10/19 Javascript
JavaScript仿支付宝6位数字密码输入框
2016/12/29 Javascript
不得不看之JavaScript构造函数及new运算符
2017/08/21 Javascript
详解开源的JavaScript插件化框架MinimaJS
2017/10/26 Javascript
基于jQuery Ajax实现下拉框无刷新联动
2017/12/06 jQuery
JavaScript常用数组操作方法,包含ES6方法
2020/05/10 Javascript
JavaScript运行机制实例分析
2020/04/11 Javascript
vue之封装多个组件调用同一接口的案例
2020/08/11 Javascript
在Python中定义一个常量的方法
2018/11/10 Python
Mac安装python3的方法步骤
2019/08/09 Python
pytorch使用tensorboardX进行loss可视化实例
2020/02/24 Python
Python configparser模块常用方法解析
2020/05/22 Python
python安装后的目录在哪里
2020/06/21 Python
如何使用Django Admin管理后台导入CSV
2020/11/06 Python
美国网上眼镜商城:Zenni Optical
2016/11/20 全球购物
英国简约舒适女装品牌:Great Plains
2018/07/27 全球购物
家电业务员岗位职责
2014/03/10 职场文书
竞选班长演讲稿500字
2014/08/22 职场文书
2014年国庆节演讲稿
2014/09/02 职场文书
人事代理委托书
2014/09/27 职场文书
一个独生女的故事观后感
2015/06/04 职场文书
Java基础之线程锁相关知识总结
2021/06/30 Java/Android