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中getJSON的使用方法
Dec 13 Javascript
jQuery EasyUI API 中文文档 - ProgressBar 进度条
Sep 29 Javascript
jquery+css+ul模拟列表菜单具体实现思路
Apr 15 Javascript
脚本合并提升javascript性能示例
Feb 24 Javascript
jQuery异步验证用户名是否存在示例代码
May 21 Javascript
JS+DIV+CSS实现仿表单下拉列表效果
Aug 18 Javascript
阿里云ecs服务器中安装部署node.js的步骤
Oct 08 Javascript
canvas实现粒子时钟效果
Feb 06 Javascript
Angular使用动态加载组件方法实现Dialog的示例
May 11 Javascript
使用Node.js写一个代码生成器的方法步骤
May 10 Javascript
vantUI 获得piker选中值的自定义ID操作
Nov 04 Javascript
vue 数据遍历筛选 过滤 排序的应用操作
Nov 17 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
thinkphp autoload 命名空间自定义 namespace
2015/07/17 PHP
php创建多级目录与级联删除文件的方法示例
2019/09/12 PHP
ExtJS 入门
2010/10/29 Javascript
jquery validate添加自定义验证规则(验证邮箱 邮政编码)
2013/12/04 Javascript
js中传递特殊字符(+,&amp;)的方法
2014/01/16 Javascript
现如今最流行的JavaScript代码规范
2014/03/08 Javascript
js中将String转换为number以便比较
2014/07/08 Javascript
使用jquery.upload.js实现异步上传示例代码
2014/07/29 Javascript
jquery 实现两Select 标签项互调示例代码
2014/09/25 Javascript
浅谈javascript中的DOM方法
2015/07/16 Javascript
jquery实现网页的页面平滑滚动效果代码
2015/11/02 Javascript
jquery插件ajaxupload实现文件上传操作
2015/12/09 Javascript
详解Bootstrap glyphicons字体图标
2016/01/04 Javascript
animate 实现滑动切换效果【实例代码】
2016/05/05 Javascript
JQuery.validate在ie8下不支持的快速解决方法
2016/05/18 Javascript
js字符串引用的两种方式(必看)
2016/09/18 Javascript
js实现文字选中分享功能
2017/01/25 Javascript
Vue.js实现网格列表布局转换方法
2017/08/25 Javascript
[59:35]DOTA2-DPC中国联赛定级赛 Aster vs DLG BO3第一场 1月8日
2021/03/11 DOTA
python3生成随机数实例
2014/10/20 Python
详解Python字符串对象的实现
2015/12/24 Python
Python入门之三角函数全解【收藏】
2017/11/08 Python
Python实现可自定义大小的截屏功能
2018/01/20 Python
python 编写简单网页服务器的实例
2018/06/01 Python
Python进阶:生成器 懒人版本的迭代器详解
2019/06/29 Python
Pytorch转keras的有效方法,以FlowNet为例讲解
2020/05/26 Python
Python如何利用Har文件进行遍历指定字典替换提交的数据详解
2020/11/05 Python
如何找出EMP表里面SALARY第N高的employee
2013/12/05 面试题
工商管理专业实习大学生自我鉴定
2013/09/19 职场文书
电子商务应届生求职信
2013/11/16 职场文书
《春笋》教学反思
2014/04/15 职场文书
校园环保标语
2014/06/13 职场文书
外科护士长工作总结
2015/08/12 职场文书
用python删除文件夹中的重复图片(图片去重)
2021/05/12 Python
浅谈Python数学建模之线性规划
2021/06/23 Python
详解Python中的进程和线程
2021/06/23 Python