uni-app 页面传参
时间: 2023-08-01 22:12:12 浏览: 118
在 uni-app 中,可以使用以下方法将参数传递给目标页面:
1. URL传参:在跳转时,将参数以URL的形式附加在目标页面的路径后面。例如:
```
uni.navigateTo({
url: '/pages/detail/detail?id=123'
})
```
在目标页面中可以通过 `this.$route.query.id` 来获取参数。
2. Vuex存储:将参数存储在Vuex中,目标页面从Vuex中取出参数。例如:
在调用页面:
```
this.$store.commit('setParam', {id: 123})
uni.navigateTo({
url: '/pages/detail/detail'
})
```
在目标页面:
```
computed: {
id () {
return this.$store.state.param.id
}
}
```
3. 事件总线:在全局创建一个事件总线对象,调用页面将参数通过事件传递给目标页面。例如:
在 `main.js` 中创建事件总线:
```
Vue.prototype.$bus = new Vue()
```
在调用页面:
```
this.$bus.$emit('param', {id: 123})
uni.navigateTo({
url: '/pages/detail/detail'
})
```
在目标页面:
```
created () {
this.$bus.$on('param', (param) => {
this.id = param.id
})
}
```
以上三种方法都可以在 uni-app 中实现页面传参,具体应该根据实际需求选择使用哪种方法。
阅读全文