这篇文章主要介绍“uni-app组件通信的方式是什么”,在日常操作中,相信很多人在uni-app组件通信的方式是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”uni-app组件通信的方式是什么”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
专注于为中小企业提供网站设计、成都网站建设服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业邢台县免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了1000多家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
uni-app的通信方式和vue小程序是一样的 但语法上采用了vue的
主要分为 父传子 : props
子传父 通过 v-on 简写 @
兄弟组件通信 uni.$on
首先是父传子
父组件
<template>
<view class="content">
<assembly :name="name"></assembly>
</view>
</template>
<script>
import text from "/assembly/assembly.vue"
export default {
data() {
return {
imageurl: [],
name: '子组件定义姓名'
}
},
components:{
assembly: text
},
}
</script>
然后子组件assembly就可以通过props拿到这个name
代码如下
<template>
<view>{{ name }}</view>
</template>
<script>
export default {
data() {
return {
}
},
props: ["name"],
created(){
console.log(this.name);
},
}
</script>
这里需要注意 vue中的props是个大对象 而在uni中我们需要用一个 字符串数组来接
然后子传父的话 需要子组件调用父组件传递给自己的事件并传参
父组件
<template>
<view class="content">
<assembly :name="name" @getname="getname"></assembly>
</view>
</template>
<script>
import text from "/assembly/assembly.vue"
export default {
data() {
return {
imageurl: [],
name: '子组件定义姓名'
}
},
components:{
assembly: text
},
methods: {
getname(name){
console.log(name);
}
}
}
</script>
此时我们定义了一个getname方法并传递给了子组件 并接受一个参数并打印出来
然后我们在子组件中调用他
<template>
<view @click="getname">{{ name }}</view>
</template>
<script>
export default {
data() {
return {
}
},
props: ["name"],
created(){
console.log(this.name);
},
methods: {
getname(){
this.$emit('getname','子组件传给父组件的值')
}
}
}
</script>
当我们点击view时 触发子组件自己的getname 然后在这个方法中调用了父组件传来的getname方法 并传递了参数
然后是兄弟组件传值
例如我们一个父组件同时引用了 texta 和 textb做自己的子组件
然后我们可以在texta中写
<template>
<viev>{{ name }}</view>
</template>
<script>
export default {
data() {
return {
name: '初始值'
}
},
created(){
uni.$on('bingdts',res=>{
this.name = res
})
}
}
</script>
此时我们A组件就定义了一个bingdts方法 然后我们可以通过B组件 去调用这个方法和传参
textb组件写法
<template>
<view @click="getname">{{ name }}</view>
</template>
<script>
export default {
data() {
return {
name: "修改兄弟值"
}
},
methods: {
getname(){
uni.$emit('bingdts',111)
}
}
}
</script>
然后你就会发现 textb 的方法触发调用texta的bingdts 参数就会实现兄弟组件传值
到此,关于“uni-app组件通信的方式是什么”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注创新互联网站,小编会继续努力为大家带来更多实用的文章!
网页题目:uni-app组件通信的方式是什么
本文来源:https://www.cdcxhl.com/article16/pgscgg.html
成都网站建设公司_创新互联,为您提供企业建站、搜索引擎优化、虚拟主机、网站制作、ChatGPT、网站营销
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联