vue3中传值方式:

1、父组件向子组件传值

父组件Blog.vue

 <template>
<div id="blog">
<Alert v-if="alert" v-bind:message="alert"></Alert>
</div>
</template>
<script>
import Alert from './Alert'
export default {
name: 'blog',
data () {
return {
alert:'父组件向子组件传递的值'
}
},
components:{
Alert
}
}
</script>

子组件Alert.vue

 <template>
<div class="alert">
{{message}}
</div>
</template> <script>
export default {
name: 'alert',
props:['message'],
data () {
return { }
}
}
</script>

2、子组件向父组件传值

子组件child.vue

 <template>
<div class="child">
<input v-on:click="sendValue" type="button" value="子组件向父组件传值">
</div>
</template>
<script>
export default{
data(){
return {
val:"子组件的value值"
}
},
methods:{
sendValue(){
this.$emit('titleChanged',this.val);
}
}
}
</script>

titleChanged是父组件中绑定的函数名

父组件father.vue

 <template>
<div class="father">
<h1>{{faval}}</h1>
<child v-on:titleChanged="getValue"></child>
</div>
</template>
<script>
import child from './child.vue'
export default{
data(){
return {
faval:"Hello word!"
}
},
components:{
child
},
methods:{
getValue(data){
this.faval = data
console.log(this.faval)
}
}
}
</script>

3、非父子组件传递值

非父子组件之间传值,需要定义工具文件eventHub.js进行传值,不然路由组件之间达不到传值的效果

组件之间传递参数工具类eventHub.js

 import Vue from 'vue'

 export default new Vue()

组件A向组件B传值

组件A.vue

 <template>
<div class="classA">
<input type="button" value="A组件向B组件发送值" v-on:click="returnHome">
</div>
</template>
<script>
import Hub from './eventHub.js'
export default{
data(){
return {
msg:4
}
},
methods:{
returnHome(){
Hub.$emit('val',this.msg)
}
}
}
</script>

组件B.vue

 <template>
<div class="classB">
<h3>{{name}}</h3>
</div>
</template>
<script>
import Hub from './eventHub.js'
export default{
data(){
return {
name:''
}
},
mounted:function(){
var that = this
Hub.$on('val',(data)=>{
that.name = data
})
}
}
</script>

Vue组件传值,父传子,子传父,非父子组件的更多相关文章

  1. 组件基础(非父子组件传值)—Vue学习笔记

    最近几天忙着写Api去了,抽空把后面的内容下出来,然后再分享给大家web可以使用的api. 上次说了父子组件直接的传值,这次看一下非父子组件之间的传值(总线机制) 要实现非父子组件之间的传值非常重要的 ...

  2. 【vue】父组件主动调用子组件 /// 非父子组件传值

    一  父组件主动调用子组件: 注意:在父组件使用子组件的标签上注入ref属性,例如: <div id="home"> <v-header ref="he ...

  3. Vue父子,子父,非父子组件之间传值

    Vue组件基础 纯属随笔记录,具体详细教程,请查阅vue.js网站 子组件给父组件传值: <body> <div id="app"> <my-app& ...

  4. vue非父子组件间传参问题

    最近在使用vue进行开发,遇到了组件之间传参的问题,此处主要是针对非父子组件之间的传参问题进行总结,方法如下:一.如果两个组件用友共同的父组件,即 FatherComponent.vue代码 < ...

  5. vue中父子组件之间的传值、非父子组件之间的传值

    在Vue实例中每个组件之间都是相互独立的,都有自己的作用域,所以组件之间是不能直接获取数据.在项目开发中一个组件可能需要获取另一个组件的值,我们可以通过其他方法间接的获取.所以,获取的方法有以下几种: ...

  6. Vue组件通信之非父子组件传值

    前言: 如果想要了解非父子关系的组件传值,最好是在了解父传子和子传父的基础上在来了解非父子传值可能会有更透彻的思路. 因为非父子传值是通过定义事件总线来代理实现父传子+子传父从而实现的传值方式. 这是 ...

  7. 简述在Vue脚手架中,组件以及父子组件(非父子组件)之间的传值

    1.组件的定义 组成: template:包裹HTML模板片段(反映了数据与最终呈现给用户视图之间的映射关系) 只支持单个template标签: 支持lang配置多种模板语法: script:配置Vu ...

  8. Vue—非父子组件间的传值(Bus/发布订阅模式/观察者模式/总线)

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  9. vue2.0父子组件以及非父子组件通信传参详解

    1.父组件传递数据给子组件 父组件数据如何传递给子组件呢?可以通过props属性来实现 父组件: <parent> <child :child-msg="msg" ...

随机推荐

  1. 浅谈响应式Web设计与实现思路

    是否还在为你的应用程序适配PC端,移动端,平板而苦苦思索呢,是否在寻找如何一套代码适配多终端方式呢,是否希望快速上手实现你的跨终端应用程序呢,是的话,那就看过来吧,本文阐述响应式UI设计相关理论基础, ...

  2. word粘贴图片到ekitor

    最近公司做项目需要实现一个功能,在网页富文本编辑器中实现粘贴Word图文的功能. 我们在网站中使用的Web编辑器比较多,都是根据用户需求来选择的.目前还没有固定哪一个编辑器 有时候用的是UEditor ...

  3. LibreOffice/Calc:取消单元格中的超链接

     造冰箱的大熊猫@cnblogs 2019/2/27 在LibreOffice Calc的表格中输入电子邮箱地址或者网址后,软件会自动将输入内容转换为超链接形式显示.在某些情况下这种自动转换并非用户所 ...

  4. hdu 5773 最长递增子序列 (nlogn)+贪心

    The All-purpose Zero Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Oth ...

  5. 存储映射--mmap

    存储映射 使一个磁盘文件与存储空间中的一个缓冲区相映射. 当从缓冲区中取数据,就相当于读文件中的相应字节. 将数据存入缓冲区,则相应的字节就自动写入文件. 使用这种方法,首先应通知内核,将一个指定文件 ...

  6. 简单的SSRF的学习

    自己眼中的SSRF 成因 服务端允许了 可以向其他服务器请求获取一些数据 通过各种协议 http https file等(外网服务器所在的内网进行端口的扫描指纹的识别等) 一SSRF配合redis未授 ...

  7. __new()__与__init__()

    1. __new__:创建对象时调用,会返回当前对象的一个实例.(默认情况下也就是你在类中没有没有重新这个方法,会默认返回当前类的示例,如果你重写了这个方法,但是在方法中没有返回当前类的示例,那么也就 ...

  8. DB 分库分表(4):多数据源的事务处理

    系统经sharding改造之后,原来单一的数据库会演变成多个数据库,如何确保多数据源同时操作的原子性和一致性是不得不考虑的一个问题.总体上看,目前对于一个分布式系统的事务处理有三种方式:分布式事务.基 ...

  9. Okhttp源码分析--基本使用流程分析

    Okhttp源码分析--基本使用流程分析 一. 使用 同步请求 OkHttpClient okHttpClient=new OkHttpClient(); Request request=new Re ...

  10. 撩测试MM神器cypress使用入门

    不很久不很久以前 据说某家公司有两位前端,天天撸bug,为啥嘞?只怪测试MM倾人国,轻语哥哥有bug.✧(๑•̀ㅂ•́)و✧ 可是最近两位有点犯愁 Σ(っ °Д °;)っ.测试MM有几次提了紧急bug ...