微信小程序js方法互相调用传值
时间: 2023-11-02 22:03:40 浏览: 45
微信小程序中,可以通过以下几种方式实现js方法互相调用传值:
1. 直接调用
可以直接通过函数名调用对应的方法,并将需要传递的参数作为参数传入。
例如,在页面A中定义一个方法:
```
function methodA(paramA) {
console.log(paramA);
}
```
在页面B中调用该方法:
```
Page({
data: {
paramB: 'Hello World!'
},
onLoad: function () {
var pages = getCurrentPages();
var prevPage = pages[pages.length - 2];
prevPage.methodA(this.data.paramB);
}
})
```
2. 通过事件传递
在页面A中定义一个事件:
```
Page({
data: {
paramA: ''
},
onLoad: function () {
this.triggerEvent('eventA', {paramA: this.data.paramA});
}
})
```
在页面B中监听该事件并获取传递的参数:
```
Page({
data: {
paramB: ''
},
methods: {
eventAListener: function (event) {
this.setData({paramB: event.detail.paramA});
}
}
})
```
3. 通过全局变量
在app.js中定义一个全局变量:
```
App({
globalData: {
param: ''
}
})
```
在页面A中存储需要传递的参数:
```
var app = getApp();
app.globalData.param = 'Hello World!';
```
在页面B中获取该参数:
```
var app = getApp();
console.log(app.globalData.param);
```
以上三种方式都可以实现js方法互相调用传值,在实际开发中可以根据具体需求选择合适的方式。