vue 父子组件传值,兄弟组件传值
父子组件中的传值
父向子 v-bind props
<!-- 组件使用v-bind传值 -->
<router :msg="msg"></router> 子组件:
<p>子组件 ----- {{msg}}</p> props: ["msg"], //props接收
props:验证
props: {
// fooA只接受数值类型的参数
fooA: Number,
// fooB可以接受字符串和数值类型的参数
fooB: [String, Number],
// fooC可以接受字符串类型的参数,并且这个参数必须传入
msg: {
type: String,
required: true
},
// fooD接受数值类型的参数,如果不传入的话默认就是100
fooD: {
type: Number,
default: 100
},
// fooE接受对象类型的参数
fooE: {
type: Object,
// 当为对象类型设置默认值时必须使用函数返回
default: function() {
return { message: "Hello, world" };
}
},
// fooF使用一个自定义的验证器
fooF: {
validator: function(value) {
return value >= 0 && value <= 100;
}
},
fooG: {
type:Array,
// 当为数组类型设置默认值时必须使用数组返回
default: function() {
return [];
}
},
}
props 是单向绑定的:当父组件的属性变化时,将传导给子组件,但是不会反过来。这是为了防止子组件修改父组件的状态。所以不应该在子组件中修改 props 中的值,Vue 警告。
这是我上次想修改父组件的值遇到的报错:

子向父 v-on $emit
子组件:
<button @click="cyy">按钮</button>
methods: {
cyy() {
this.$emit("zifu", "子组件向父组件传值", true);
}
} 父组件:
<router v-on:zifu="hehe"></router>
methods: {
hehe: function(data, data2) {
console.log(data, data2);
}
}
兄弟组件中的传值
第一个办法:父组件中转
<div> //爸爸A
<router></router> //哥哥A1
<vuex></vuex> //弟弟A2
</div>
A1要向A2传值 、 可以用$emit传给A、A在使用v-bind传给A2
使用父组件做中转 这里不举例了只是把上面的子向父,父向子连起来用
第二个方法:Bus中央事件总线

父组件组件代码:
<div> //爸爸A
<router></router> //哥哥A1
<vuex></vuex> //弟弟A2
</div>
哥哥A1组件:
<button @click="cyy">按钮</button> 点击按钮向弟弟A2传值
脚本中:
import Bus from "../api/Bus"; //注意引入
export default {
data() {
return {
a: 1
};
},
methods: {
cyy() {
Bus.$emit("zifu", this.a++, "子组件向兄弟组件传值"); //存 Bus.$emit
}
}
};
弟弟A2组件:
<p>接受兄弟A1传值=-------第{{ccc}}次,向{{ddd}}</p>
脚本中:
import Bus from "../api/Bus";
export default {
data() {
return {
ccc: "",
ddd: ""
};
},
created() {
Bus.$on("zifu", (val, val1) => { //取 Bus.$on
this.ccc = val;
this.ddd = val1;
});
}
};
传值就告一段落了~~~~~~~~~~~~by~~~
vue 父子组件传值,兄弟组件传值的更多相关文章
- vue 父子组件、兄弟组件传值
参考文章:Vue2.0子同级组件之间数据交互 1.父组件可以使用 props 把数据传给子组件.2.子组件可以使用 $emit 触发父组件的自定义事件. (一)父组件给子组件传值,关键字:props ...
- VUE中的子父组件、兄弟组件之间相互传值,相互调用彼此的方法
vue--组件传值 父组件传值给子组件--"props" 一.父组件--示例 <template> <child :choose-data="choos ...
- vue父子组件、兄弟组件之间的通信和访问
注意:1. vue组件间的通信其实有很多种方法,最常用的还是属性传值.事件传值.vuex; 其他方法参考 https://juejin.im/post/5bd18c72e51d455e3f6e4334 ...
- vue的$emit 与$on父子组件与兄弟组件的之间通信
本文主要对vue 用$emit 与 $on 来进行组件之间的数据传输. 主要的传输方式有三种: 1.父组件到子组件通信 2.子组件到父组件的通信 3.兄弟组件之间的通信 一.父组件传值给子组件 父组件 ...
- 埋坑一: vue中子组件调用兄弟组件方法
小计: 开发中遇到子组件需要调用兄弟组件中的方法,如下写个小demo记录下心得,如果你有好的方法,请到评论区域指教 父组件示例代码: 组件功能解析: 通过$emit获取子组件事件,通过$ref调用子组 ...
- vue2.0 父子组件通信 兄弟组件通信
父组件是通过props属性给子组件通信的来看下代码: 父组件: <parent> <child :child-com="content"></chil ...
- Vue 使用eventBus 实现兄弟组件间的通信
实现方式: 主要是在相互通信的兄弟组件之中,都引入一个新的vue实例,然后通过分别调用这个实例的事件触发事件广播 和监听来实现通信和参数传递. 需求: a页面tree的增删改后,数据还是之前的老数据 ...
- Vue兄弟组件(非父子组件)状态共享与传值
前言:网上大部分文章写的有点乱,很少有讲得易懂的文章. 所以,我写了篇在我能看得懂的基础上又照顾到大家的文章 =.= 作者:X1aoYE 备注:此文原创,转载请注明~ 内容里的<br> ...
- 创建组件的方法,组件的props属性、state属性的用法和特点,父子组件传值,兄弟组件传值
1.创建组件的方法 函数组件 class组件 1.1 函数组 无状态函数式组件形式上表现为一个只带有一个 `render()` 方法的组件类,通过函数形式或者 `ES6` 箭头 `functi ...
随机推荐
- .NETCore下CI/CD之自动化测试
前言 为了呼应<中国.NET开发者峰会2019上海站>,作为演讲嘉宾,我希望和各位同行建立更多的互动,为此,我特地将部分演讲内容,整理成文章先行发布.本文从零开始,一步一步的引导,从安装J ...
- QButtonGroup 的使用
1.3以后尽量手写,因为没有现在的控件了 2. // lyy : 2016/8/26 12:17:41 说明:存放radioButton QButtonGroup *buttonGroup; // l ...
- Kafka权威指南阅读笔记(第八章)
跨集群数据镜像 使用场景: 区域集群和中心集群 这种场景下,每个区域的应用程序只访问相应的区域内的集群.而有些情况下,需要将各个集群的信息汇总到中心集群,就可以用中心集群分析业务数据了. 冗余 一个K ...
- Spark集群安装与配置
一.Scala安装 1.https://www.scala-lang.org/download/2.11.12.html下载并复制到/home/jun下解压 [jun@master ~]$ cd sc ...
- RocketMQ4.2 最佳实践之集群搭建
学习了RocketMQ的基本概念后,我们来看看RocketMQ最简单的使用场景.RocketMQ的服务器最简单的结构,必须包含一个NameServer和一个Broker.Producer把某个主题的消 ...
- 爬虫基本库的使用---urllib库
使用urllib---Python内置的HTTP请求模块 urllib包含模块:request模块.error模块.parse模块.robotparser模块 发送请求 使用 urllib 的 req ...
- Map Reduce 论文阅读
Map Reduce 是 Google 在 2004 年发表的一篇论文,原文链接 在这 后来 Hadoop 直接内置了这一框架. 读完之后记录一下心得. 主要背景:MapReduce 的出现很具有工程 ...
- [考试反思]0901NOIP模拟测试34:游离
又是放假回来的收心考.幸而熬了夜回来也不至于很困(虽说第二天早上困成狗...) 说分数吧: skyhAK300,后面有220,220,220,190,190,180 我170,排第8.凑合,其实不太满 ...
- NOIP模拟34
考试的时候被T2卡了一年....考虑了一下正解的式子,然后没去给左边分解因数,去给后面乘倍数...理论复杂度O(n^2),实际好像卡不掉的样子.但是由于我智障的打了一棵主席树,他M了.... 预计得分 ...
- 【ASP.NET Core学习】Entity Framework Core
这里介绍在ASP.NET Core中使用EF Core,这里数据库选的是Sql Server 如何使用Sql Server 添加模型 && 数据库迁移 查询数据 保存数据 如何使用Sq ...

