根据Vue官方文档学习的笔记

在学习vue时,组件学习比较吃力,尤其是组件间的通信,所以总结一下,官方文档的组件部分。

注册组件

  • 全局组件

语法如下,组件模板需要使用一个根标签包裹起来。data必须是一个方法


Vue.component('component-name',{
template:'<div><h1>标题</h1><span>作者信息</span></div>',
data(){
return{
message:'组件的属性'
}
},
methods:{ }
})
  • 局部组件

var com = {
template:'<div><h1>标题</h1><span>作者信息</span></div>',
data(){
return{
message:'组件的属性'
}
},
methods:{ }
} new Vue({
components:{
'compontent-name':com
}
})

组件通信

  • prop将父组件数据传给子组件

<div id='app'>
<child :msg=message></child>
</div>

<script>
Vue.component('child', {
props: ['msg'],
template: '<p>{{msg}}</p>'
}) new Vue({
el: '#app',
data: {
message: '父组件数据'
}
})
</script>

利用子组件的props选项,父组件可以向子组件传递数据,但是子组件不能求改父组件的数据。

  • 非父子组件通信

需要使用一个空的Vue实例来管理


<div id='app'>
<com-a></com-a>
<com-b></com-b>
</div>

var bus = new Vue(); var coma = {
template: '<p @click="send">{{adata}}</p>',
data(){
return {
adata: 'a的数据'
}
},
methods:{
send(){
// 触发这一事件
bus.$emit('data-to-b', this.adata);
}
} }; var comb= {
template: '<p>{{bdata}}</p>',
data(){
return {
bdata: 'b的数据'
}
},
mounted(){
// 监听事件,获取a组件的数据,进行相关操作
bus.$on('data-to-b', function (msg) {
this.bdata = msg;
}.bind(this));
}
}; new Vue({
el:'#app',
components: {
'com-a': coma,
'com-b': comb
}
})

Vue组件学习的更多相关文章

  1. vue组件学习(二)

    父子组件之间的数据传递, 父传给子: 直接在组件上传,如:<count :number="2"> (冒号和不要冒号的区别,有冒号会自动转为相应的类型)在名为count的 ...

  2. vue组件学习(一)

    1, vue中的 is 的用法,有时候我们需要把一个组件绑定到指定的标签下,比如把tr组件放到table下,直接这样写是不行的, <!DOCTYPE html> <html lang ...

  3. Vue组件学习(转载)

    什么是组件:组件是Vue.js最强大的功能之一.组件可以扩展HTML元素,封装可重用的代码.在较高层面上,组件是自定义的元素,Vue.js的编译器为它添加特殊功能.在有些情况下,组件也可以是原生HTM ...

  4. vue学习目录 vue初识 this指向问题 vue组件传值 过滤器 钩子函数 路由 全家桶 脚手架 vuecli element-ui axios bus

    vue学习目录 vue学习目录 Vue学习一之vue初识 Vue学习二之vue结合项目简单使用.this指向问题 Vue学习三之vue组件 Vue学习四之过滤器.钩子函数.路由.全家桶等 Vue学习之 ...

  5. day 83 Vue学习三之vue组件

    本节目录 一 什么是组件 二 v-model双向数据绑定 三 组件基础 四 父子组件传值 五 平行组件传值 六 xxx 七 xxx 八 xxx 一 什么是组件 首先给大家介绍一下组件(componen ...

  6. Vue – 基础学习(2):组件间 通信及参数传递

    Vue – 基础学习(2):组件间 通信及参数传递

  7. Vue.js学习-组件注册与使用

    Vue.js学习文档 地址:https://cn.vuejs.org/v2/guide/ 关于自定义组件注册: 建议将<script></script>放在body标签之后 H ...

  8. 4.VUE前端框架学习记录四:Vue组件化编码2

    VUE前端框架学习记录四:Vue组件化编码2文字信息没办法描述清楚,主要看编码Demo里面,有附带完整的代码下载地址,有需要的同学到脑图里面自取.脑图地址http://naotu.baidu.com/ ...

  9. 3.VUE前端框架学习记录三:Vue组件化编码1

    VUE前端框架学习记录三:Vue组件化编码1文字信息没办法描述清楚,主要看编码Demo里面,有附带完整的代码下载地址,有需要的同学到脑图里面自取.脑图地址http://naotu.baidu.com/ ...

随机推荐

  1. .NET Framework 源码查看与调试

    1. 直接下载.NET Framework源代码(下载地址),然后用Visual Studio 13 打开查看.2. 在线查看,网址:http://referencesource.microsoft. ...

  2. Jenkins持久化集成使用

    1.概述 Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功能包括: 持续的软件版本发布/测试项目 监控外部调用执行的工作 2.搭建 2.1环境准备 首先我们要准备搭建的环 ...

  3. 走进javascript——它是什么?

    javascript不是什么 如<把时间当作朋友>的作者所说,"有些时候,有些事物,从反面描述比从正面描述更为容易.如若先仔细说清楚这本书不是什么,之后,至于它究竟是什么,很可能 ...

  4. Spring Boot项目的内嵌容器

    一.关于容器 刚才开始使用spring boot的开发者会有种很直观的感觉,servlet容器“不见了”.之前开发web项目,都是把程序写完后部署到servlet容器(比如Tomcat),但是使用sp ...

  5. Spring总结 3.AOP(xml)

    本随笔内容要点如下: 什么是AOP AOP术语解释 Spring中AOP的xml实现 一.什么是AOP AOP(Aspect Oriented Programming),即面向切面编程.那什么是面向切 ...

  6. 核心组件之SecurityContextHolder

    作用:保留系统当前的安全上下文细节,其中就包括当前使用系统的用户的信息.   上下文细节怎么表示?     用SecurityContext对象来表示   每个用户都会有它的上下文,那这个Securi ...

  7. 基于C++ Qt实现的红色警戒3修改器

    前言 这部修改器制作有一段时间了,但是一直没出教程.今天利用周末空闲写篇教程,给后来者指路的同时也加深自己对游戏修改器的理解,大佬就随便看看吧 浏览了一下网络,形形色色的单机游戏修改器教程,但是基本只 ...

  8. Solr 清空数据的简便方法

    1. 首先访问你的 core,然后点击左侧的 Documents 2. 在 documents type 选择 XML 3. documents 输入下面语句 <delete><qu ...

  9. C# int? 关键字

    1.int?  关键字说明 (1).int? 表示一个int类型,且该int类型可空,如果不加?的话,那么int类型的默认值为0,不能赋null值,代码如下: int aa = null; (2).当 ...

  10. rsync --include-from --exclude-from的理解

    rsync --include-from --exclude-from的理解: 1.同时添加--include-from --exclude-from时.后者是对前者的结果进行排除 如:“--incl ...