vue的组件间的参数传递

如题所述

第1个回答  2022-07-14
vue的组件间传值可分为以下几种情况:

1.父子组件间的传值:通过props传值。父组件引入封装好的子组件,通过变量 占位传值,在子组件中通过props接收数据。

2.子父组件传值:子组件通过$emit方法传递参数:

   例如:this.$emit('emitEvent',data,'传递的参数或值') 

   父组件中:

<template @emitEvent='ievent'></template>

methods:{

     ievent(..data){

    console.log(‘allData',data)

      }

        }

3.watch监听变化:

1.watch是一个对象,有键(要监听的对象),值(对象发生变化,执行的函数。

值可以是函数,也可以是函数名。

例如:

4.父组件引用封装出去的子组件

5.通过动态组件:

注意:通过使用预定义的标签<component>可以动态的绑定is特性,使得多个组件有一个共同的挂载点,实现动态切换。

<keep-alive>标签会把切换出去的组件保留在内存中,可以保留他的状态或避免重新渲染

6.兄弟之间传值:eventBus传值(中间代理人)

首先先创建这个中间代理人(eventbus)

A组件向B组件传值,A组件中要通过eventbus总线触发相应的事件

B组件要在钩子函数中监听相应的事件:

ps:解释的不好大家见谅,欢迎大家评论,提出意见
相似回答