微信小程序 onUdpMessage: function onUdpMessage(res) { var that = this; that.setData({ message: res.message }); } TypeError: that.setData is not a function at VueComponent.onUdpMessage
时间: 2024-03-03 12:48:01 浏览: 15
看起来你正在使用 Vue.js 来编写微信小程序,但是 Vue.js 中的 `setData()` 方法并不存在,它是微信小程序提供的一个方法。你应该使用 `this.setData()` 而不是 `that.setData()` 来更新数据。因此,你需要将你的代码修改为:
```javascript
onUdpMessage: function onUdpMessage(res) {
this.setData({
message: res.message
});
}
```
这样应该就可以解决这个错误了。
相关问题
解释这段代码 getnotip: function(){ var that = this api.get(topic,{ systemName: 'shareInfo' }).then(res=>{ that.setData({ info: res.Data }) var notic = res.Data.Body; WxParse.wxParse('article', 'html', notic, that, 5); }) } })
这段代码是一个小程序中的一个函数,它的作用是获取一些通知信息并将其展示在小程序中。具体来说,这个函数中的代码:
1. `var that = this` 将当前函数的 `this` 对象赋值给一个变量 `that`,这是为了在后面的代码中能够访问到 `this` 对象。
2. `api.get(topic, { systemName: 'shareInfo' })` 发送一个 GET 请求到 `topic` 地址,并传入一个参数 `{ systemName: 'shareInfo' }`。这个请求返回一个 Promise 对象。
3. `then(res => { ... })` 是 Promise 对象的一个方法,当请求成功时,它会执行后面的代码。这里的 `res` 是请求成功后返回的数据。
4. `that.setData({ info: res.Data })` 是一个小程序的方法,用来更新当前页面的数据。这里将 `res.Data` 对象中的数据更新到 `info` 变量中。
5. `var notic = res.Data.Body` 将 `res.Data.Body` 中的内容赋值给一个变量 `notic`,这里假设 `res.Data.Body` 中包含了通知信息的 HTML 代码。
6. `WxParse.wxParse('article', 'html', notic, that, 5)` 是一个小程序的方法,用来解析 HTML 代码并将其显示在小程序页面中。这里的 `article` 是一个参数,用来指定解析后的内容的 ID,`html` 是一个参数,表示 `notic` 是一个 HTML 代码,`notic` 是要解析的 HTML 代码,`that` 表示当前页面的对象,`5` 表示解析过程中使用的缩放比例。
finish: function () { var that = this; wx.request({ url: "https://www.easy-mock.com/mock/596257bc9adc231f357c4664/restaurant/filter", method: "GET", success: function (res) { that.setData({ restaurant: res.dat
这是一个小程序中的一个函数,用于发送 HTTP 请求获取数据并更新页面。在这个例子中,函数首先获取了当前页面实例对象 this,并将其保存在变量 that 中,然后使用 wx.request 发送了一个 GET 请求,请求地址为 https://www.easy-mock.com/mock/596257bc9adc231f357c4664/restaurant/filter。请求成功后,服务器会返回一个响应对象,其中包含了请求的数据。在 success 回调函数中,通过调用 this.setData 方法来更新页面中名为 restaurant 的数据,将其设置为响应对象的 data 属性值。示例代码如下:
```javascript
Page({
data: {
restaurant: []
},
finish: function () {
var that = this;
wx.request({
url: "https://www.easy-mock.com/mock/596257bc9adc231f357c4664/restaurant/filter",
method: "GET",
success: function (res) {
that.setData({
restaurant: res.data
})
}
})
}
})
```
上面的代码中,定义了一个名为 restaurant 的数据对象,其中初始值为空数组。在 finish 函数中,通过调用 wx.request 方法发送了一个 GET 请求,请求成功后通过调用 this.setData 方法将响应对象的 data 属性值赋值给 restaurant 数据对象,从而更新页面中的数据。