微信小程序引用其他界面变量
时间: 2024-10-12 08:15:42 浏览: 22
详解微信小程序实现仿微信聊天界面(各种细节处理)
在微信小程序中,如果你想要在一个页面引用另一个页面的变量,通常通过父子组件间的通信(parent-child communication)来实现。有两种常见的方法:
1. **事件总线(Event Bus)**:你可以创建一个全局的事件中心,比如`wx.createSelectorQuery()`,在需要的地方发布事件,然后在目标页面监听这个事件并传递数据。
```javascript
Page({
onLaunch() {
this.globalData.testValue = 'from parent';
wx.selectSelectorQuery()
.select('#childPage')
.fields({
type: 'property',
properties: ['testValue']
})
.exec((res) => {
console.log(res[0].testValue); // 在子页面访问parent页面的变量
});
}
})
```
2. **数据绑定(Data Binding)**:如果两个页面有直接关联,可以考虑使用props(属性),从父组件传值给子组件。例如,将需要共享的数据作为父组件的属性设置。
```html
<!-- 父组件 -->
<view>{{globalValue}}</view>
<child-page :value="globalValue"></child-page>
<script>
export default {
data() {
return { globalValue: 'parent value' };
}
};
</script>
```
```html
<!-- 子组件 child-page.wxml -->
<view>{{value}}</view>
<script>
export default {
props: {
value: {
type: String,
default: ''
}
}
};
</script>
```
阅读全文