兄弟组件联动(兄弟之间进行传值)

当兄弟组件之间进行传值的时候,比较麻烦,我们可以采用一个组件先向父组件传值,然后父组件在向另一个组件传值
点击某个元素 可以用e来接收某个事件对象 console.log(e.target.innerText)来获取当前值

子组件向父组件床底数据
methods:{
handleDemo(e){
this.$emit(‘change’,e.target.innerText)
}
}

父组件接收子组件传值

1、首先先在父组件里面对应的子组件中鉴定子组件定义的事件,例如change
<Demo @change=“handleDemo1”>
methods{
handleDemo1(letter){
console.log(letter)
}

父组件向子组件传值(可以通过属性的方式)

1、在父组件中定义一个新的数据letter
data(){
letter:’’
}
methods{
handleDemo1(letter){
this.letter=letter
}

2、在父组件中找到子组件,让子组件接收值就行

3、在子组件自己的页面中用props进行接收
props{
letter:String
}

4、我们需要监听letter的变化,即第一个子组件发生变化的时候,后面的组件也要发生变化

需要用到:ref="",这个写在html里面
watch:{
letter(){
if(this.letter){
const element = this.$refs[this.letter]
this.scroll.scrollToElement() //滚动事件
}
}
}

发布了9 篇原创文章 · 获赞 6 · 访问量 53

猜你喜欢

转载自blog.csdn.net/weixin_46137478/article/details/104719264