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中[attribute=value]选择器用法实例
Dec 31 Javascript
学习JavaScript设计模式之迭代器模式
Jan 19 Javascript
详解Node.js包的工程目录与NPM包管理器的使用
Feb 16 Javascript
javascript运算符——逻辑运算符全面解析
Jun 27 Javascript
AngularJs html compiler详解及示例代码
Sep 01 Javascript
微信小程序 本地存储及登录页面处理实例详解
Jan 11 Javascript
vue+springboot前后端分离实现单点登录跨域问题解决方法
Jan 30 Javascript
基于Vue实现微信小程序的图文编辑器
Jul 25 Javascript
react.js组件实现拖拽复制和可排序的示例代码
Aug 20 Javascript
解决vue单页面应用中动态修改title问题
Jun 09 Javascript
Vue 权限控制的两种方法(路由验证)
Aug 16 Javascript
js实现简单掷骰子效果
Oct 24 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
四月新番又没了,《Re:从零开始的异世界生活》第二季延期至7月播出
2020/05/06 日漫
PHP连接和操作MySQL数据库基础教程
2014/09/29 PHP
PHP基于CURL进行POST数据上传实例
2014/11/10 PHP
PHP面向对象中new self()与 new static()的区别浅析
2017/08/17 PHP
jQuery 使用手册(三)
2009/09/23 Javascript
jQuery 数据缓存data(name, value)详解及实现
2010/01/04 Javascript
jquery ajax 同步异步的执行示例代码
2010/06/23 Javascript
js实现屏蔽默认快捷键调用自定义事件示例
2013/06/18 Javascript
浅谈JavaScript中定义变量时有无var声明的区别
2014/08/18 Javascript
node.js中的fs.lchmodSync方法使用说明
2014/12/16 Javascript
JS实现超简洁网页title标题跑动闪烁提示效果代码
2015/10/23 Javascript
Vue.js快速入门教程
2016/09/07 Javascript
Bootstrap表格使用方法详解
2017/02/17 Javascript
angular ng-click防止重复提交实例
2017/06/16 Javascript
JS实现区分中英文并统计字符个数的方法示例
2018/06/09 Javascript
原生js实现可兼容PC和移动端的拖动滑块功能详解【测试可用】
2019/08/15 Javascript
如何使用JavaScript检测空闲的浏览器选项卡
2020/05/28 Javascript
JS前端基于canvas给图片添加水印
2020/11/11 Javascript
解决vue打包 npm run build-test突然不动了的问题
2020/11/13 Javascript
Python中用Ctrl+C终止多线程程序的问题解决
2013/03/30 Python
Python挑选文件夹里宽大于300图片的方法
2015/03/05 Python
Pycharm 创建 Django admin 用户名和密码的实例
2018/05/30 Python
python 实现提取某个索引中某个时间段的数据方法
2019/02/01 Python
python中web框架的自定义创建
2019/09/08 Python
flask 实现token机制的示例代码
2019/11/07 Python
Python 使用xlwt模块将多行多列数据循环写入excel文档的操作
2020/11/10 Python
几个Shell Script面试题
2014/04/18 面试题
linux面试相关问题
2012/08/11 面试题
学前教育求职自荐信范文
2013/12/25 职场文书
商务英语专业求职信范文
2014/01/28 职场文书
认识深刻的检讨书
2014/02/16 职场文书
《宋庆龄故居的樟树》教学反思
2014/04/07 职场文书
小学生综合素质评语
2014/04/23 职场文书
优胜劣汰,强者为王——读《鲁滨逊漂流记》有感
2019/08/15 职场文书
讲解Python实例练习逆序输出字符串
2022/05/06 Python
css之clearfix的用法深入理解(必看篇)
2023/05/21 HTML / CSS