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 scrollTop方法根据滚动像素显示隐藏顶部导航条
May 27 Javascript
无刷新预览所选择的图片示例代码
Apr 02 Javascript
js实现鼠标滑过文字链接色彩变化的效果
May 06 Javascript
jQuery实现图片左右滚动特效
Apr 20 Javascript
easyui combobox开启搜索自动完成功能的实例代码
Nov 08 Javascript
JS非空验证及邮箱验证的实例
Aug 11 Javascript
Express系列之multer上传的使用
Oct 27 Javascript
vue项目部署上线遇到的问题及解决方法
Jun 10 Javascript
JS实现关键词高亮显示正则匹配
Jun 22 Javascript
layui button 按钮弹出提示窗口,确定才进行的方法
Sep 06 Javascript
electron踩坑之remote of undefined的解决
Oct 06 Javascript
解决element-ui的下拉框有值却无法选中的情况
Nov 07 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
PHP 5.0对象模型深度探索之绑定
2006/09/05 PHP
PHP 多进程 解决难题
2009/06/22 PHP
php 代码优化的42条建议 推荐
2009/09/25 PHP
PHP中大于2038年时间戳的问题处理方案
2015/03/03 PHP
PHP实现的折半查询算法示例
2017/10/09 PHP
ThinkPHP框架整合微信支付之刷卡模式图文详解
2019/04/10 PHP
跟随鼠标旋转的文字
2006/11/30 Javascript
20个非常有用的PHP类库 加速php开发
2010/01/15 Javascript
javascript中callee与caller的用法和应用场景
2010/12/08 Javascript
Javascript 面向对象(二)封装代码
2012/05/23 Javascript
Javascript 命名空间模式
2013/11/01 Javascript
使用jQuery实现的掷色子游戏动画效果
2014/03/14 Javascript
Jquery性能优化详解
2014/05/15 Javascript
使用JavaScript实现网页版Pongo设计思路及源代码分享
2014/06/16 Javascript
jquery中radio checked问题
2015/03/16 Javascript
全系IE支持Bootstrap的解决方法
2015/10/19 Javascript
详解js中构造流程图的核心技术JsPlumb(2)
2015/12/08 Javascript
js实现Tab选项卡切换效果
2020/07/17 Javascript
JS中验证整数和小数的正则表达式
2018/10/08 Javascript
bootstrapValidator表单校验、更改状态、新增、移除校验字段的实例代码
2020/05/19 Javascript
python实现给字典添加条目的方法
2014/09/25 Python
python嵌套字典比较值与取值的实现示例
2017/11/03 Python
Python机器学习算法之k均值聚类(k-means)
2018/02/23 Python
pytorch构建网络模型的4种方法
2018/04/13 Python
详解python之heapq模块及排序操作
2019/04/04 Python
深入浅析python的第三方库pandas
2020/02/13 Python
python实现根据给定坐标点生成多边形mask的例子
2020/02/18 Python
Python迭代器Iterable判断方法解析
2020/03/16 Python
如何用Python和JS实现的Web SSH工具
2021/02/23 Python
HTML5文档结构标签
2017/04/21 HTML / CSS
意大利买卖二手奢侈品网站:LAMPOO
2020/06/03 全球购物
世界上最大的艺术社区:SAA
2020/12/30 全球购物
暑期培训班策划方案
2014/08/26 职场文书
2016自主招生教师推荐信范文
2015/03/23 职场文书
2015年度村委会工作总结
2015/04/29 职场文书
JAVA 线程池(池化技术)的实现原理
2022/04/28 Java/Android