组件(页面上的每一个部分都是组件)
1.三部分:结构(template),样式(style),逻辑(script)
2.组件的作用:复用
3.模块包含组件
4.组件创建:
    1.全局组件:Vue.component();
    2.局部组件:components();
        参数1:组件的名称
        参数2:组件的配置项
*组件的配置项:
    1.new Vue这个里面有什么参数,那么组件的配置项中就有什么参数,包含生命周期
    2.组件内部多了一个属性template
    3.组件内部的data不在是一个对象,而是一个函数
组件的使用:
    1.直接将组件的名称当做标签使用即可
    2.组件名称首字母必须大写
5.脚手架的使用
    1.安装:
        3.0 cnpm install @vue/cli -g
        2.9.3 cnpm install vue-cli -g
    2.创建项目
        3.0 vue create <项目名称>
        2.9.3 vue init webpack <项目名称>
6..组件间的传值(组件之间的通讯)
    一.父子通信
    1.父传子
       传递:当子组件在父组件当做标签使用的时候,通过给子组件绑定一个自定义属性,值为需要传递的数据
        接收:在子组件内部通过props进行接收
            接收方式有两种:
                1.一种是数组接收,2.另一种是对象接收
                一般情况下我们都使用对象进行接收,因为对象接收可以校验数据的类型
eg:
props:["val"];
props:{
    val:String//当这个是number的时候,就会有警告
}
    2.子传父
        (1)传递:当子组件给父组件传递数据的时候,通过调用父组件给子组件绑定的自定义事件,然后将传递过去
        接收:父组件通过自定义事件的函数来接收子组件传递过来的数据(注意这个自定义方法的函数在绑定的时候不需要加())
        (2)作用域插槽
    二、 非父子
        1.在vue的原型身上添加一个公共的vue实例,组件之间调用这个公共的实例的$on and $emit来传递数据,传递的一方调用$emit,接收的一方用$on;
        2.手动封装$on $emit $off(原理应用了观察者模式)
        3.EventBus
        4.vuex
 

vue组件的基本使用,以及组件之间的基本传值方式的更多相关文章

  1. vue.js使用props在父子组件之间传参

    本篇文章是我参考官方文档整理的,供大家参考,高手勿喷! prop 组件实例的作用域是孤立的.这意味着不能 (也不应该) 在子组件的模板内直接引用父组件的数据.要让子组件使用父组件的数据,我们需要通过子 ...

  2. 【Vue课堂】Vue.js 父子组件之间通信的十种方式

    这篇文章介绍了Vue.js 父子组件之间通信的十种方式,不管是初学者还是已经在用 Vue 的开发者都会有所收获.无可否认,现在无论大厂还是小厂都已经用上了 Vue.js 框架,简单易上手不说,教程详尽 ...

  3. vue组件之间传值方式解析

    vue组件之间传值方式解析一.父组件传到子组件 1.父组件parent代码如下: <template> <div class="parent"> <h ...

  4. vue的$emit 与$on父子组件与兄弟组件的之间通信

    本文主要对vue 用$emit 与 $on 来进行组件之间的数据传输. 主要的传输方式有三种: 1.父组件到子组件通信 2.子组件到父组件的通信 3.兄弟组件之间的通信 一.父组件传值给子组件 父组件 ...

  5. vue学习--组件之间的传值方式

    1.概述 vue由多个组件构成页面,在不同的组件中有不同的联系,组件之间的传值是十分有必要的 2.父子组件之间传值 --props和$emit 父传子:通过props 方法:子组件:props:['m ...

  6. vue单文件组件形成父子(子父)组件之间通信(vue父组件传递数据给子组件,子组件传递数据给父组件)

    看了很多文章,官网文档也有看,对父子组件通信说的不是很明白:决定自己总结一下: vue一般都使用构建工具构建项目:这样每个组件都是单文件组件:而网上很多文章都是script标签方式映入vue,组件通信 ...

  7. vue组件之间的传值方式

    一.父组件向子组件传值方式 1.1父组件向子组件传数据方式 <!DOCTYPE html> <html lang="en"> <head> &l ...

  8. vue.js入门(3)——组件通信

    5.2 组件通信 尽管子组件可以用this.$parent访问它的父组件及其父链上任意的实例,不过子组件应当避免直接依赖父组件的数据,尽量显式地使用 props 传递数据.另外,在子组件中修改父组件的 ...

  9. vue.js基础知识篇(6):组件详解

    第11章:组件详解 组件是Vue.js最推崇也最强大的功能之一,核心目标是可重用性. 我们把组件代码按照template.style.script的拆分方式,放置到对应的.vue文件中. 1.注册 V ...

随机推荐

  1. Selenium自动化测试之元素定位

    步骤: 1.通过前端工具,查看元素的属性 2.通过属性定位 iddriver.findElement(By.id("kw")) namedriver.findElement(By. ...

  2. org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redisConnectionFactory' defined in class path resource

    Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'r ...

  3. IOS 修改图片的地理位置信息

    直接上代码: // // ViewController.m // changeLocation // // Created by 陈飞 on 16/10/31. // Copyright © 2016 ...

  4. haproxy快速安装

    haproxy是一款提供负载均衡的代理服务器,它可基于modetcp 实现伪四层调度,还可以基于modehttp实现七层调度,类似于nginx,因为他没有web服务所以不像nginx那样进行控制. 通 ...

  5. 前端axios下载excel无法获取header所有字段问题

    后端设置header后,前端无法获取到其他字段,只需要在服务器端header里面设置 Access-Control-Expose-Headers: Content-Disposition

  6. 关机,重启BAT命令

    关机命令shutdown -s -t 重启命令 shutdown -r -t

  7. BZOJ2143: 飞飞侠

    2143: 飞飞侠 题意: 给出两个 n ∗ m 的矩阵 A,B,以及 3 个人的坐标 在 (i, j) 支付 Ai,j 的费用可以弹射到曼哈顿距离不超过 Bi,j 的位置 问三个人汇合所需要的最小总 ...

  8. 编译ROCKSDB总结

    Rocksdb是挺好的一个东西,就是取得一个可用的库太麻烦.之前我是用的rocksdbsharp里面他有编译好windows 和 linux的库 兼 容性还挺好,ubuntu win10 直接跑没毛病 ...

  9. 为什么在Python里推荐使用多进程而不是多线程?

    最近在看Python的多线程,经常我们会听到老手说:“Python下多线程是鸡肋,推荐使用多进程!”,但是为什么这么说呢?   要知其然,更要知其所以然.所以有了下面的深入研究: 首先强调背景: 1. ...

  10. 解决微信浏览器中无法一键拨号问题tel

    公众号中需要在某些页面显示手机号码,并且需要点击后拨号. 原以为 <a href="tel:10086">10086</a> 可以解决了, 没想到在微信浏览 ...