Vue 组件注册全解析


Posted in Vue.js onDecember 17, 2020

全局组件注册语法

components中的两个参数组件名称和组件内容

Vue.component(组件名称, {
   data: 组件数据,
   template:组件模板内容
  })

全局组件注册应用

组件创建:

Vue.component('button-counter', {
   data: function(){
    return {
     count: 0
    }
   },
   template: '<button @click="handle">点击了{{count}}次</button>',
   methods: {
    handle: function(){
     this.count ++;
    }
   }
  })
  var vm = new Vue({
   el: '#app',
   data: {
   }
  });

如何在页面中运用,直接在页面中应用组件名称

<div id="app">
  <button-counter></button-counter>
</div>

这个组件是可以重用的,直接在页面中多次使用,切数据相互独立,互不干扰

组件注册注意事项

1.data必须是一个函数

  • 分析函数与普通对象的对比

2.组件模板内容必须是单个根元素

  • 分析演示实际的效果

3.组件模板内容可以是模板字符串

  • 模板字符串需要浏览器提供支持(ES6语法)

4.组件命名方式

  • 短横线方式
Vue.component('my-component',{/*...*/})

驼峰方式

Vue.component('MyComponent',{/*...*/})

如果使用驼峰式命名组件,那么在使用组件的时候,只能在字符串模板中用驼峰的方式使用组件,但是在普通的标签模板中,必须使用短横线的方式使用组件

局部组件

局部组件只能在注册它的父组件中使用

局部组件注册语法

var ComponentA = {/*...*/}
var ComponentB = {/*...*/}
var ComponentC = {/*...*/}
new Vue({
  el : '#app',
  components: {

'component-a' : ComponentA,


'component-b' : ComponentB,


'component-c' : ComponentC

}
})

组件的创建

Vue.component('test-com',{
   template: '<div>Test<hello-world></hello-world></div>'
  });
  var HelloWorld = {
   data: function(){
    return {
     msg: 'HelloWorld'
    }
   },
   template: '<div>{{msg}}</div>'
  };
  var HelloTom = {
   data: function(){
    return {
     msg: 'HelloTom'
    }
   },
   template: '<div>{{msg}}</div>'
  };
  var HelloJerry = {
   data: function(){
    return {
     msg: 'HelloJerry'
    }
   },
   template: '<div>{{msg}}</div>'
  };
  var vm = new Vue({
   el: '#app',
   data: {
    
   },
   components: {
    'hello-world': HelloWorld,
    'hello-tom': HelloTom,
    'hello-jerry': HelloJerry
   }
  });

页面中的应用

<div id="app">
  <hello-world></hello-world>
  <hello-tom></hello-tom>
  <hello-jerry></hello-jerry>
  <test-com></test-com>
 </div>

以上就是Vue 组件注册全解析的详细内容,更多关于Vue 组件注册的资料请关注三水点靠木其它相关文章!

Vue.js 相关文章推荐
在Vue中使用Echarts可视化库的完整步骤记录
Nov 18 Vue.js
Vue在H5 项目中使用融云进行实时个人单聊通讯
Dec 14 Vue.js
vue绑定class的三种方法
Dec 24 Vue.js
vue动态设置路由权限的主要思路
Jan 13 Vue.js
WebStorm无法正确识别Vue3组合式API的解决方案
Feb 18 Vue.js
如何理解Vue简单状态管理之store模式
May 15 Vue.js
Vue+Element UI实现概要小弹窗的全过程
May 30 Vue.js
Vue实现导入Excel功能步骤详解
Jul 03 Vue.js
Vue3.0中Ref与Reactive的区别示例详析
Jul 07 Vue.js
vue如何使用模拟的json数据查看效果
Mar 31 Vue.js
vue实现可以快进后退的跑马灯组件
Apr 08 Vue.js
Vue OpenLayer 为地图绘制风场效果
Apr 24 Vue.js
vue图片裁剪插件vue-cropper使用方法详解
Dec 16 #Vue.js
vue实现图片裁剪后上传
Dec 16 #Vue.js
Vue-router中hash模式与history模式的区别详解
Dec 15 #Vue.js
vue项目中企业微信使用js-sdk时config和agentConfig配置方式详解
Dec 15 #Vue.js
Vue解决移动端弹窗滚动穿透问题
Dec 15 #Vue.js
8个非常实用的Vue自定义指令
Dec 15 #Vue.js
vue从后台渲染文章列表以及根据id跳转文章详情详解
Dec 14 #Vue.js
You might like
smarty 原来也不过如此~~呵呵
2006/11/25 PHP
ThinkPHP模板中判断volist循环的最后一条记录的验证方法
2014/07/01 PHP
JS中简单的实现像C#中using功能(有源码下载)
2007/01/09 Javascript
jquery 日期分离成年月日的代码
2010/05/14 Javascript
jQuery技巧总结
2011/01/01 Javascript
非主流的textarea自增长实现js代码
2011/12/20 Javascript
解析dom中的children对象数组元素firstChild,lastChild的使用
2013/07/10 Javascript
jQuery替换字符串(实例代码)
2013/11/13 Javascript
textarea不能通过maxlength属性来限制字数的解决方法
2014/09/01 Javascript
js中字符串编码函数escape()、encodeURI()、encodeURIComponent()区别详解
2016/04/01 Javascript
玩转JavaScript OOP - 类的实现详解
2016/06/08 Javascript
Angualrjs 表单验证的两种方式(失去焦点验证和点击提交验证)
2017/05/09 Javascript
详解EasyUi控件中的Datagrid
2017/08/23 Javascript
vue单页面应用打开新窗口显示跳转页面的实例
2018/09/21 Javascript
[47:03]Ti4第二日主赛事败者组 LGD vs iG 2
2014/07/21 DOTA
[00:10]DOTA2 TI9勇士令状明日上线
2019/05/07 DOTA
python发送HTTP请求的方法小结
2015/07/08 Python
Python获取linux主机ip的简单实现方法
2016/04/18 Python
Python cookbook(数据结构与算法)找出序列中出现次数最多的元素算法示例
2018/03/15 Python
Python实现爬取马云的微博功能示例
2019/02/16 Python
python实现扫描ip地址的小程序
2019/04/16 Python
详解使用Python下载文件的几种方法
2019/10/13 Python
python3 实现函数写文件路径的正确方法
2019/11/27 Python
浅谈python中频繁的print到底能浪费多长时间
2020/02/21 Python
浅谈Django中的QueryDict元素为数组的坑
2020/03/31 Python
Python机器学习工具scikit-learn的使用笔记
2021/01/28 Python
美国领先的户外服装与装备用品店:Moosejaw
2016/08/25 全球购物
Snapfish爱尔兰:在线照片打印和个性化照片礼品
2018/09/17 全球购物
测试驱动开发的主要步骤是什么
2014/12/10 面试题
学前教育专业毕业生自荐信
2013/10/03 职场文书
理财学专业自荐书
2014/06/28 职场文书
2014年法务工作总结
2014/12/11 职场文书
2015年社区重阳节活动总结
2015/07/30 职场文书
《认识年月日》教学反思
2016/02/19 职场文书
财产分割协议书
2016/03/22 职场文书
python flask开发的简单基金查询工具
2021/06/02 Python