Home Web Front-end Vue.js How to pass value from vue subcomponent to parent component

How to pass value from vue subcomponent to parent component

Jul 27, 2021 am 11:29 AM
vue Component communication

Methods for vue sub-components to pass values ​​to parent components: 1. The sub-component actively triggers events to pass data to the parent component. 2. Bind ref to the subcomponent and define a function that the parent component can call directly. The parent component registers the subcomponent and then binds the ref and calls the function of the subcomponent to obtain data.

How to pass value from vue subcomponent to parent component

The operating environment of this tutorial: windows7 system, vue2.9.6 version, DELL G3 computer.

1. The child component actively triggers the event and passes the data to the parent component

1. Bind an event and the function triggered by the event on the child component

Subcomponent code

<template>
<div>
<Tree :data="treeData" show-checkbox ref="treeData"></Tree>

<Button type="success" @click="submit"></Button>
</div>
  
</template>
Copy after login

The function that the event triggers in the subcomponent

      submit(){
        this.$emit(&#39;getTreeData&#39;,this.$refs.treeData.getCheckedNodes());
      },
Copy after login

2, bind the triggering event in the parent component

<AuthTree  @getTreeData=&#39;testData&#39;>
</AuthTree>
Copy after login

The parent component triggers the function display Data passed by the subcomponent

testData(data){
      console.log("parent");
      console.log(data)
    },
Copy after login

Data printed by the console

How to pass value from vue subcomponent to parent component

Second, there is no need to trigger events in the subcomponent (such as clicking a button, create() event, etc.)

This way is much simpler,

1, bind ref

<template>
<div>
<Tree :data="treeData" show-checkbox ref="treeData"></Tree>
</div>
  
</template>
Copy after login

in the subcomponent and then Define a function in the child component, which can be called directly by the parent component. The return value of the function is defined as the data we need.

getData(){
        return this.$refs.treeData.getCheckedNodes()
    },
Copy after login

Then register the sub-component with the parent component and then bind the ref, and call the function of the sub-component to obtain the data

<AuthTree ref="authTree">
          </AuthTree>
Copy after login

Function call of the parent component

console.log( this.$refs.authTree.getData());
Copy after login

Related recommendations:《vue.js tutorial

The above is the detailed content of How to pass value from vue subcomponent to parent component. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
2 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
2 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. How to Fix Audio if You Can't Hear Anyone
2 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

How to use Vue to implement electronic quotation forms with single header and multi-body? How to use Vue to implement electronic quotation forms with single header and multi-body? Apr 04, 2025 pm 11:39 PM

How to implement electronic quotation forms with single header and multi-body in Vue. In modern enterprise management, the electronic processing of quotation forms is to improve efficiency and...

Why is there no page request information on the console network after vue-router jump? Why is there no page request information on the console network after vue-router jump? Apr 04, 2025 pm 05:27 PM

Why is there no page request information on the console network after vue-router jump? When using vue-router for page redirection, you may notice a...

How to implement the photo upload function of high-photographers of different brands on the front end? How to implement the photo upload function of high-photographers of different brands on the front end? Apr 04, 2025 pm 05:42 PM

How to implement the photo upload function of different brands of high-photographers on the front end When developing front-end projects, you often encounter the need to integrate hardware equipment. for...

How to achieve segmentation effect with 45 degree curve border? How to achieve segmentation effect with 45 degree curve border? Apr 04, 2025 pm 11:48 PM

Tips for Implementing Segmenter Effects In user interface design, segmenter is a common navigation element, especially in mobile applications and responsive web pages. ...

Does JavaScript naming specification raise compatibility issues in Android WebView? Does JavaScript naming specification raise compatibility issues in Android WebView? Apr 04, 2025 pm 07:15 PM

JavaScript Naming Specification and Android...

How to make sure the bottom of a 3D object is fixed on the map using Mapbox and Three.js in Vue? How to make sure the bottom of a 3D object is fixed on the map using Mapbox and Three.js in Vue? Apr 04, 2025 pm 06:42 PM

How to use Mapbox and Three.js in Vue to adapt three-dimensional objects to map viewing angles. When using Vue to combine Mapbox and Three.js, the created three-dimensional objects need to...

How to use el-table to implement table grouping, drag and drop sorting in Vue2? How to use el-table to implement table grouping, drag and drop sorting in Vue2? Apr 04, 2025 pm 07:54 PM

Implementing el-table table group drag and drop sorting in Vue2. Using el-table tables to implement group drag and drop sorting in Vue2 is a common requirement. Suppose we have a...

See all articles