关于vue.extend和vue.component的区别浅析


Posted in Javascript onAugust 16, 2017

前言

最近一个朋友问我vue.extend和vue.component两者之间有什么区别?突然这么一问竟答不出来,回来想想有必要总结下,所以本文就来给大家介绍关于vue.extend和vue.component的区别,下面话不多说了,来一起看看详细的介绍吧。

Vue.extend 返回的是一个“扩展实例构造器”,也就是一个预设了部分选项的 Vue 实例构造器

var myVue = Vue.extend({
 // 预设选项
}) // 返回一个“扩展实例构造器”

// 然后就可以这样来使用
var vm = new myVue({
 // 其他选项
})

Vue.component 是用来全局注册组件的方法,其作用是将通过 Vue.extend 生成的扩展实例构造器注册(命名)为一个组件,可以简单理解为当在模板中遇到该组件名称作为标签的自定义元素时,会自动调用类似于 new myVue 这样的构造函数来生成组件实例,并挂载到自定义元素上,当然实际情况要比这复杂得多,还需要处理 props 数据传递、slot 内容分发、自定义事件、组件生命周期……事宜。

在网上看到了一个网友的分析也分享给大家,如下:

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.extend和vue.component的区别浅析

就是创建一个vue实例咯 返回一个vm实例 。api中vm的说明就是new Vue创建的

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Javascript 相关文章推荐
JS 巧妙获取剪贴板数据 Excel数据的粘贴
Jul 09 Javascript
js 实现日期灵活格式化的小例子
Jul 14 Javascript
JavaScript中诡异的delete操作符
Mar 12 Javascript
JS实现可自定义大小,可双击关闭的弹出层效果
Oct 16 Javascript
基于RequireJS和JQuery的模块化编程日常问题解析
Apr 14 Javascript
weUI应用之JS常用信息提示弹层的封装
Nov 21 Javascript
深入理解Vue官方文档梳理之全局API
Nov 22 Javascript
浅谈Angular文字折叠展开组件的原理分析
Nov 24 Javascript
浅谈如何通过node.js对数据进行MD5加密
May 16 Javascript
详解JS浏览器事件循环机制
Mar 27 Javascript
vue-video-player 解决微信自动全屏播放问题(横竖屏导致样式错乱问题)
Feb 25 Javascript
Vue中避免滥用this去读取data中数据
Mar 02 Vue.js
在一般处理程序(ashx)中弹出js提示语
Aug 16 #Javascript
深入研究jQuery图片懒加载 lazyload.js使用方法
Aug 16 #jQuery
详谈表单重复提交的三种情况及解决方法
Aug 16 #Javascript
详谈js对url进行编码和解码(三种方式的区别)
Aug 16 #Javascript
Node.js 的模块知识汇总
Aug 16 #Javascript
vue绑定设置属性的多种方式(5)
Aug 16 #Javascript
jQuery中each循环的跳出和结束实例
Aug 16 #jQuery
You might like
同一空间绑定多个域名而实现访问不同页面的PHP代码
2006/12/06 PHP
php中 ob_start等函数截取标准输出的方法
2015/06/22 PHP
php实现处理输入转义字符的代码
2015/11/08 PHP
PHP实现一个简单url路由功能实例
2016/11/05 PHP
解决FLASH需要点击激活的代码
2006/12/20 Javascript
utf-8编码引起js输出中文乱码的解决办法
2010/06/23 Javascript
JQuery的Alert消息框插件使用介绍
2010/10/09 Javascript
JS实现拖动示例代码
2013/11/01 Javascript
JavaScript中DOM详解
2015/04/13 Javascript
详解JavaScript中localStorage使用要点
2016/01/13 Javascript
第一次接触神奇的Bootstrap菜单和导航
2016/08/01 Javascript
学习Angular中作用域需要注意的坑
2016/08/17 Javascript
Vue.js每天必学之Class与样式绑定
2016/09/05 Javascript
jQuery 检查某个元素在页面上是否存在实例代码
2016/10/27 Javascript
详解javascript获取url信息的常见方法
2016/12/19 Javascript
解决iView中时间控件选择的时间总是少一天的问题
2018/03/15 Javascript
bootstrap中日历范围选择插件daterangepicker的使用详解
2018/04/17 Javascript
vue检测对象和数组的变化分析
2018/06/30 Javascript
Vue在页面数据渲染完成之后的调用方法
2018/09/11 Javascript
详解JavaScript类型判断的四种方法
2020/10/21 Javascript
Python 编码处理-str与Unicode的区别
2016/09/06 Python
Python 装饰器使用详解
2017/07/29 Python
在Python的一段程序中如何使用多次事件循环详解
2017/09/07 Python
Python实现注册、登录小程序功能
2018/09/21 Python
pytorch ImageFolder的覆写实例
2020/02/20 Python
详解Python中Pyyaml模块的使用
2020/10/08 Python
Bealls Florida百货商店:生活服饰、家居装饰和鞋子
2018/02/23 全球购物
有趣的流行文化T恤、马克杯、手机壳和更多:Look Human
2019/01/07 全球购物
恶意软件的定义
2014/11/12 面试题
英语专业推荐信
2013/11/16 职场文书
党员四风问题个人对照检查材料
2014/10/26 职场文书
小学师德师风整改措施
2014/10/27 职场文书
故宫英文导游词
2015/01/31 职场文书
《风不能把阳光打败》读后感3篇
2020/01/06 职场文书
原生CSS实现文字无限轮播的通用方法
2021/03/30 HTML / CSS
字节飞书面试promise.all实现示例
2022/06/16 Javascript