Vue父子组件值的传递【极简版】

发现宝藏

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。【宝藏入口】。

1. 父组件向子组件传值

在Vue.js中,父组件向子组件传递值通常通过props(属性)来实现。以下是一种典型的方法:

在父组件中,可以使用子组件的标签,并通过props属性将数据传递给子组件。子组件可以通过props接收并使用这些数据。下面是一个简单的示例:

父组件模板:

<template>
  <div>
    <child-component :message="messageFromParent"></child-component>
  </div>
</template>

<script>
import ChildComponent from './ChildComponent.vue';

export default {
   
  components: {
   
    ChildComponent,
  },
  data() {
   
    return {
   
      messageFromParent: 'Hello from Parent!',
    };
  },
};
</script>

子组件模板:

<template>
  <div>
    <p>{
   {
    message }}</p>
  </div>
</template>

<script>
export default {
   
  props: {
   
    message: String,
  },
};
</script>

在上面的示例中,父组件通过在子组件标签中使用 :message 来传递数据给子组件。子组件中使用 props 来声明要接收的属性,并可以在模板中使用它们。在这个示例中,子组件接收名为 message 的属性,它的类型是字符串,然后在模板中显示这个消息。

你可以根据具体需求传递不同的数据类型和多个props,根据需要在子组件中使用它们。这是一种父组件向子组件传递数据的基本方法。

2. 子组件向父组件传值

在Vue.js中,当你将一个 prop 传递给子组件时,子组件默认不应该修改这个 prop,因为它应该是一个来自父组件的单向数据流。这意味着子组件不能直接更改父组件中传递的 prop 的值。

如果子组件需要改变某个值,并且希望这个改变反映到父组件中,你可以使用自定义事件来通知父组件做出相应的改变。这是前面提到的使用 this.$emit 的方法。你可以触发一个自定义事件,在父组件中监听并更新数据。

在Vue.js中,子组件向父组件传递值需要使用自定义事件。下面是一种常见的方法:

在子组件中,可以使用 $emit 方法触发一个自定义事件,并传递需要传递的数据。然后在父组件中通过在子组件上监听这个事件来获取数据。下面是一个简单的示例:

父组件模板:

<template>
  <div>
    <child-component @custom-event="handleEvent"></child-component>
    <p>Received data: {
   {
    receivedData }}</p>
  </div>
</template>

<script>
import ChildComponent from './ChildComponent.vue';

export default {
   
  components: {
   
    ChildComponent,
  },
  data() {
   
    return {
   
      receivedData: null,
    };
  },
  methods: {
   
    handleEvent(data) {
   
      this.receivedData = data;
    },
  },
};
</script>

子组件模板:

<template>
  <div>
    <button @click="sendDataToParent">Send Data to Parent</button>
  </div>
</template>

<script>
export default {
   
  methods: {
   
    sendDataToParent() {
   
      this.$emit('custom-event', 'Data sent from child component');
    },
  },
};
</script>

在上面的示例中,子组件通过 sendDataToParent 方法向父组件触发了名为 custom-event 的事件,并传递了数据。父组件监听到该事件后,会执行 handleEvent 方法来接收并处理数据。

这是一个基本的示例,实际应用中可以根据具体情况来进行调整和扩展。

相关推荐

  1. Vue父子组件传递

    2024-01-11 20:52:01       39 阅读
  2. vue3+vite+ts父子组件之间

    2024-01-11 20:52:01       44 阅读
  3. vue3父子组件之间方式

    2024-01-11 20:52:01       21 阅读
  4. Vue3中父子组件问题

    2024-01-11 20:52:01       14 阅读
  5. Vue3中组合式ApI父子组件数据传递

    2024-01-11 20:52:01       78 阅读
  6. vue父子组件

    2024-01-11 20:52:01       35 阅读
  7. vue父子组件问题

    2024-01-11 20:52:01       23 阅读
  8. vue3父子组件

    2024-01-11 20:52:01       28 阅读
  9. vue实现axios和事件Bus等父子组件事件传递实现

    2024-01-11 20:52:01       14 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-01-11 20:52:01       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-01-11 20:52:01       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-01-11 20:52:01       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-01-11 20:52:01       18 阅读

热门阅读

  1. CMake编译选项CMAKE_CXX_FLAGS详解

    2024-01-11 20:52:01       29 阅读
  2. Ubuntu查看内存使用情况

    2024-01-11 20:52:01       30 阅读
  3. 【PHP】价格区间字段验证,如4万-5万

    2024-01-11 20:52:01       27 阅读
  4. Linux 基础知识点详细总结

    2024-01-11 20:52:01       30 阅读
  5. C#-sort()利用委托自定义排序

    2024-01-11 20:52:01       33 阅读
  6. R语言【base】——unlink():删除文件和目录

    2024-01-11 20:52:01       35 阅读
  7. 记录学习--校验文件的SHA、MD5

    2024-01-11 20:52:01       37 阅读
  8. Leetcode16-有多少小于当前数字的数字(1365)

    2024-01-11 20:52:01       36 阅读