1.子组件直接调用父组件的数据和方法

在父组件father,vue

<template>
<div>
<!-- 父组件里面的数据 -->
<p>父组件里面的数据{{data}}</p> <!-- 父组件里面的方法 -->
<p click="test">父组件里面的方法方法方法方法</p>
<!-- 使用组件 -->
<child></child>
</div>
</template>
<script>
import child from './components/child.vue'// 引入子组件
export default {
components:{
//注册组件
child
},
data(){
return{
data:'我的父组件data'
}
},
methods:{
test(){
console.log('点击了父组件')
}
}
}
</script>

下面在子组件中调用父组件的数据和方法

<template>
<div>
<button @click="toFather">我是子组件 {{this.$parent.data}}</button>
<!-- this.$parent.data获取父组件的数据 -->
</div>
</template>
<script>
export default {
data(){
return{}
},
methods:{
toFather() {
// 直接通过this.$parent.test()获取方法
this.$parent.test()
}
}
}
</script>

总结:

直接在子组件中   this.$parent.prop  调用的数据

this.$parent.fn()    调用的方法

2.父组件直接调用子组件的数据和方法

父组件调用子组件的地方,添加一个ref的属性,属性值任意定义  即在父组件组件中 father.vue

<template>
<div>
我是父组件
<!--调用子组件组件 添加ref属性 -->
<child ref="getdata"></child>
<button @click="getChild">点击按钮获取子组件的数据msg</button>
</div>
</template>
<script>
import child from './components/child.vue'// 引入子组件
export default {
components:{
//注册组件
child
},
data(){
return{
}
},
methods:{
getChild(){
// this.$refs.getdata.msg 拿到数据
console.log(this.$refs.getdata.msg)
}
}
}
</script>

child.vue的数据

<template>
<div>
<button>我是子组件</button>
</div>
</template>
<script>
export default {
data(){
return{
msg:'我是子组件数据'
}
},
methods:{
}
}
</script>

总结:

  父组件调用子组件的地方,添加一个ref的属性,属性值任意定义
  父组件某一个事件中,可以通过this.$refs.test.prop拿到子组件的数据,可以通过this.$refs.test.fn()调用子组件的方法

vue中子组件调用父组件里面的数据和方法 父组件调用子组件的数据和方法的更多相关文章

  1. 关于Vue中,在方法中使用(操作)子组件获取到的数据

    已知,子组件通过props获取父组件传过来的数据,而这个数据是无法在created.mounted生命周期中使用的,只能在beforeUpdated或者updated获取到: 但是如果我们要使用这个数 ...

  2. 父组件调用子组件中的方法- this.$refs.xxx.子组件方法();

    子组件中有一个说的方法 在父组件中去调用当你点击的时候 去调用子组件中的方法 fu.vue 在父组件的方法中调用子组件的方法,很重要 this.$refs.mychild.parentHandlecl ...

  3. 父组件中vuex方法更新state,子组件不能及时更新并渲染的解决方法

    场景: 我实际用到的是这样的,我父组件引用子组件related,父组件调用获取页面详情的方法,更新了state值related,子组件根据该related来渲染相关新闻内容,但是页面打开的时候总是先加 ...

  4. Vue子组件调用父组件的方法

    Vue子组件调用父组件的方法   Vue中子组件调用父组件的方法,这里有三种方法提供参考 第一种方法是直接在子组件中通过this.$parent.event来调用父组件的方法 父组件 <temp ...

  5. Vue父组件调用子组件的方法

    vue中如果父组件想调用子组件的方法,可以在子组件中加上ref,然后通过this.$refs.ref.method调用,例如: 父组件: <template> <div @click ...

  6. vue中父组件调用子组件函数

    用法: 子组件上定义ref="refName",  父组件的方法中用 this.$refs.refName.method 去调用子组件方法 详解: 父组件里面调用子组件的函数,父组 ...

  7. vue父组件调用子组件资源

    通过上篇博文提到的方法我们可以触发子组件的某个事件来实现调用子组件的某些资源(例如数据和方法),但是更多的情况下我们会想不通过触发子组件的事件,而直接调用子组件的资源 这个时候我们就需要用到ref了, ...

  8. 关于Vue中,父组件获取子组件的数据(子组件调用父组件函数)的方法

    1. 父组件调用子组件时,在调用处传给子组件一个方法 :on-update="updateData"   2. 子组件在props中,接收这个方法并声明 props: { onUp ...

  9. 埋坑一: vue中子组件调用兄弟组件方法

    小计: 开发中遇到子组件需要调用兄弟组件中的方法,如下写个小demo记录下心得,如果你有好的方法,请到评论区域指教 父组件示例代码: 组件功能解析: 通过$emit获取子组件事件,通过$ref调用子组 ...

  10. vue 父组件中调用子组件函数

    2019/06/06 在父组件中调用子组件的方法:  1.给子组件定义一个ref属性.eg:ref="childItem"  2.在子组件的methods中声明一个函数.eg: u ...

随机推荐

  1. PP: A dual-stage attention-based recurrent neural network for time series prediction

    Problem: time series prediction The nonlinear autoregressive exogenous model: The Nonlinear autoregr ...

  2. PP: Robust Anomaly Detection for Multivariate Time Series through Stochastic Recurrent Neural Network

    PROBLEM: OmniAnomaly multivariate time series anomaly detection + unsupervised 主体思想: input: multivar ...

  3. linux - 查看 python 版本

    命令 python -V 结果

  4. 占位 SC

    占位 SC include: SC404 SC405

  5. Mac下Charles的安装和配置

    一.安装与破解 官网下载,破解方法参考其他,此处略 二.配置 1.电脑端安装 Charles 的根证书 注意:此时钥匙串默认为不信任,需设置为始终信任 2.配置代理:勾选enable transpre ...

  6. ddctf,warm up,web题

    1,打开链接,发现下图,hhhh好滑稽啊,鹅鹅鹅鹅ee 2,打开源码发现source.php.添加到路径,再次访问,发现如下代码,来,让我们审计一下. 3,发现有个hint.php,进去看一看,得到一 ...

  7. AntDesign(React)学习-6 Menu展示数据

    1.官方文档请查看https://ant.design/components/menu-cn/antPro自带的菜单功能很强大,但是太复杂了,感觉大部分功能都用不上,下面实现一个简单从后台动态获取菜单 ...

  8. Docker最全教程——从理论到实战(十四)

    本篇教程主要讲解基于容器服务搭建TeamCity服务,并且完成内部项目的CI流程配置.教程中也分享了一个简单的CI.CD流程,仅作探讨.不过由于篇幅有限,完整的DevOps,我们后续独立探讨. 为了降 ...

  9. 数据库 oracle 函数

    static OracleConnection mQracleConnecting = null; public static OracleConnection QracleConnecting { ...

  10. 创建一个Java Web项目,获取POST数据并显示

    新建一个新的Java Web工程项目 打开IntelliJ IDEA 新建一个工程,选择选择Java Enterprise,设置Tomcat的安装目录,点击下一步. 选中Create project ...