IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> vue父子组件传值:父传子、子传父 -> 正文阅读

[JavaScript知识库]vue父子组件传值:父传子、子传父

最近项目中又需要用到父子组件,用了很多次之后对父子组件终于有种从善如流的感觉。会了之后再看自己写的父子组件传值的文章,感觉还是存在很多问题的,问题就不改了,在这篇文章做个总结和纠正吧。

父子组件就是在一个vue文件中引入另一个vue文件。被引入的vue文件是子组件,引入vue文件的vue文件是父组件。

1.父组件引入子组件

import引入,components调用。

import ZwFjdjForm from '../../../specialbond/modules/ZwFjdjForm'
components: {
      ZwFjdjForm
    },

?在需要调用子组件的地方调用

<ZwFjdjForm ref="ZwFjdjForm" :currentId="currentId" :canModify="canModify" ></ZwFjdjForm>

?这样子组件就被成功调用了。但是在很多情况下,我们需要父子组件互相传值

2.父组件给子组件传值

父组件 在引用子组件时,通过属性绑定(v-bind:)的形式,把需要传递给子组件的数据,传递到子组件内部,供子组件使用 。

:子组件接收父组件数据的元素="父组件传递的值"

?这样,父组件中的数据,就成功传给子组件了。

3.子组件接收父组件传来的值

在之前的文章中,我说的是使用props接收,如下格式。

?

?这个格式是可以使用的。但是后来我说过一个问题,遇到一个项目,需要调用子组件,而我需要在子组件里调用方法。之前想的是只传id,id传过去之后在子组件调用方法。当时是失败了,结论是子组件会在页面加载之前调用,所以后来是把方法写在父组件了。

这次遇到的也是一样的问题,但是这次成功了。

子组件是这样接收父组件的值的。

props:['canModify','currentId'],

?这样是可以把id传给子组件,子组件再调用接口的,不太懂两者有什么区别。

4.子组件将值传给父组件

使用this.$emit('方法名',准备传给父组件的值)直接传

this.$emit('startDateChange',mode)//向父级组件传递参数

5.父组件接收子组件传来的值

调用方法接收

<a-tab-pane tab="基本情况" :key="refKeys[0]" :forceRender="true">
  <zw-mhk-zxzq-jbqk-form ref="zwMhkZxzqJbqkForm" :canModify="canModify" @startDateChange="startDateChange" ></zw-mhk-zxzq-jbqk-form>
</a-tab-pane>
startDateChange(data){
  this.changedStartDate = data
}

这样父组件就取到了子组件传来的值

6.父组件直接调用子组件的方法

startDateChange(data){
  this.$refs.zwMhkZxzqSzysForm.getDate(data)
},

直接$refs.子组件.子组件的方法

关于父子组件的内容,在这里也算做了个完善了,希望以后父子组件不要再出现问题了。

?之前写的父子组件传值文章:

vue父子组件传值_芝士焗红薯的博客-CSDN博客_父子组件传值

  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2022-09-04 01:02:48  更:2022-09-04 01:05:31 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 11:00:35-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码