vue组件之间互相传值:父传子,子传父

  • 为什么要用到组件间传值?
    答:组件实例的作用域是孤立的。这意味着不能 (也不应该) 在子组件的模板内直接引用父组件的数据,也不能直接将子组件的数据传到父组件里面,所有我们要用到组件间传值。
  • 父组件向子组件传值步骤:(可传数据,方法)
    1. 首先,值肯定是定义在父组件中的,供所有子组件共享。所以要在父组件的data中定义值
    2. 其次,父组件要和子组件有契合点:就是在父组件中调用、注册、引用子组件.
    3. 接下来,就可以在父组件和子组件链接的地方(即引用子组件的标签上),把父组件的值绑定给子组件
    4. 最后,子组件内部肯定要去接受父组件传过来的值:props(小道具)来接收.
    5. 这样,子组件内部就可以直接使用父组件的值了.
      例子1:(父组件向子组件传数据







      例子2:(父组件向子组件传方法
      父组件写个方法

      子组件使用这个方法

      例子3:(不同的父组件调用同一个子组件,子组件展示的内容部分不同)




      需要注意的点:
      子组件接受的父组件的值分为——引用类型和普通类型两种,
      普通类型:字符串(String)、数字(Number)、布尔值(Boolean)、空(Null)
      引用类型:数组(Array)、对象(Object)
      普通类型是可以在子组件中更改,不会影响其他兄弟子组件内同样调用的来自父组件的值,但是,引用类型的值,当在子组件中修改后,父组件的也会修改,那么后果就是,其他同样引用了改值的子组件内部的值也会跟着被修改。除非你有特殊的要求这么去做,否则最好不要这么做。
  • 子组件向父组件传值步骤 :(可传数据,方法)
    • 子组件向父组件传递方法:
      子组件定义好方法,父组件在引用子组件的时候在自定义标签中添加标识符,ref=”child1(随便起的名字)(ref是方法,chiild是标识符)”,用来表示这个子组件。父组件在methods中定义自己的方法名,方法主体:this.$refs.child1.fun。意思是通过调用$refs中名字叫child1的子组件里的fun方法,赋值给父组件。
    • 子组件向父组件传递方法 步骤: (子组件里面有初始化列表,要在父组件中点击tabs栏中调用这个方法,需要用到$refs
      1. 子组件中定义方法
      2. 父组件中引用子组件时,添加一个标识符rel=’aaa’,注意rel是语法,aaa是标识
      3. 父组件中定义一个方法,表示方法就是标识为aaa的子组件里的alert2方法
      4. 调用
        例子:
        子组件中定义方法:

        父组件中添加标识:

        父组件中定义方法:

        调用: (必须有一个触发,可以是点击事件)
    • 子组件向父组件传递数据:
      子组件定义一个方法,在这个方法中通过this.$emit(‘change’,’changeMsg’)(第一个参数是传的名称,第二个参数是传的整个数据)方式发送数据changgeMsg,父组件中监听change事件,在引入的子组件中@change ="change"(最后这个change是个方法名,用来接受子组件传过来的数据,可以随便起个名字),当事件触发(比如说父组件页面是有关完结按钮操作)时,执行函数,进行赋值(比如this.a = 我传的那个参数) ,最后在触发事件函数里写上this.$refs.aaa.change(),。
    • 子组件向父组件传递数据 步骤:
      1. 子组件定义方法
      2. 父组件监听方法事件触发时执行函数
      3. 定义一个带参数的方法,调用时,让本组件的数据等于传递过来的参数,事件数据传递。
        例子:


        this.a 就是接受子组件中传过来的数据

vue组件之间互相传值:父传子,子传父相关推荐

  1. Vue 组件之间的传值方式有哪些?

    Vue 组件之间的传值方式有哪些? 在平常写Vue项目时,组件传值必不可少,今天我们就要总结一下有哪些种方式呢? 1.父组件向子组件传值(用props) 子组件 <template>< ...

  2. vue组件之间的传值(兄弟间的传值)

    概要:vue组件之间的传值大致有三种:父传子,子传父,还有兄弟之间,今天我们主要来讲兄弟之间的传值.废话不多说,我们直奔主题 vue 组件兄弟间的传值是要通过一个事件总线来实现(可以把事件总线理解为一 ...

  3. 【Vue知识点】 vue组件之间如何传值

    1.父组件 传值 子组件 父组件:<Header  :msg='msg'/> 子组件: props:['msg']          props:{               msg:数 ...

  4. vue组件之间的传值的几种方法

    vue组件之间传值的几种方法总结 一.父传子 父传子技术就是把父组件中的数据传给子元素调用,用到的方法是 1.在父组件的子组件标签上绑定一个属性,挂载要传输的变量 ,语法是 :属性名 (冒号加属性名) ...

  5. vue父组给子子组件传html,vue组件之间互相传值:父传子,子传父

    今看到一篇很不错的vue组件传值文章,便于理解,遂作笔记-vue 通常页面的视图App.vue应为这样 一.父组件向子组件传值浏览器 1.建立子组件,在src/components/文件夹下新建一个C ...

  6. Vue组件之间相互传值的方式

    1父传子 1.1父组件 1.2子组件:在 props 中添加了元素之后,就不需要在 data 中再添加变量了 2子传父 2.1子组件 2.2父组件 兄弟组件传值一:使用全局函数全局事件 第一步: 在入 ...

  7. 【全网最全】Vue 组件之间的传值

    1.组件间的传值方法简述 父组件 =data=> 子组件 子组件通过 props 子组件 =data=> 父组件 父组件向子组件传递一个函数(callback) 使用 $emit 自定义事 ...

  8. vue组件之间的传值

    一.父组件向子组件传: 1.在父组件的data中定义要传的值 2.在父组件引用的子组件中用v-bind 绑定 3.在子组件中用props定义父组件传的值,和v-bind对应 4.在子组件用mustac ...

  9. vue 组件之间的传值

    父向子传值父组件 <v-footer :projectdat="dat"></v-footer> export default {data() {retur ...

最新文章

  1. VMware 克隆虚拟机后网卡无法启动
  2. python做图像处理快不快_Python 图像读写谁最快?不信就比一比
  3. 将字符串型转换为整形
  4. 计算机老师 学高为师 身正为范,何为老师,学高为师,身正为范
  5. 正则表达式加golang爬虫爬取经典案例豆瓣top250
  6. redis学习——数据类型
  7. How to ignore files and directories in subversion?
  8. 计算机信息技术为教育带来的变化,信息技术对课堂教学带来的变化
  9. 【精华】详解Qt中的内存管理机制
  10. Web.Config文件配置之数据库连接配置
  11. admin.php为什么是乱码,phpadmin和MySQL中文乱码问题的剖析
  12. Angular2学习笔记(六) Angular2 依赖注入
  13. python程序设计简明教程知识点总结_Python程序设计简明教程 在线阅读
  14. KEIL MDK的安装(包含HAL库)
  15. 调试经验——使用VBA下载网络资源
  16. 【Linux】【操作】Linux操作集锦系列之三——进程管理系列之(一) 进程信息查看
  17. dp hdu5653 xiaoxin and his watermelon candy
  18. python写邮箱系统_Python django实现简单的邮件系统发送邮件功能
  19. JDBC学习总结及复习笔记(附MySQL驱动和JDK-API中文版)
  20. iMac2021 在重新安装mac os系统后,电脑账户创建失败

热门文章

  1. drf 获取域名+端口_如何注册域名(+简单提示可免费获取)
  2. swf无法在html播放器,错误? FlashPlayer 10根据SWF/HTML播放器设置,投影机无法进入全屏...
  3. 基于OCRA软件实现密度泛函计算优化双分子体系的复现实验,以ABPA和Trp为例
  4. 彻底卸载MariaDB
  5. Swift4.2 Xcode10 日记心情追踪APP
  6. 天火同人 (易經大意 韓長庚)
  7. 用python cv2将三维RGB图像转为二维灰度图像的小demo
  8. CentOS7 使用二进制部署 Kubernetes v1.15.3集群
  9. 常见的售后管理难点汇总
  10. 安装VMware Workstation