可以看到cash已经取到了值,而且也有定义
看网上全说request success callback是因为没有将this.setdata改为that.setdata,但是我的代码写的是that,这就很尴尬了
var Openid = options.openid
var that = this
that.data.Openid = Openid
var myDate = new Date();
var date = myDate.getTime()
console.log('用户的openid为', that.data.Openid)
console.log('用户的查询时间为', myDate)
wx.request({//通过openid搜索用户打分信息
url: 'http://localhost:23711/api/Data/GetData',
data: {
Openid: Openid,
Cash:'',
Violation: '',
Hincome: ''
},
method: 'POST',
header: { 'content-type': 'application/json' },
success: function (res) {
console.log(res.data)
var jsonObject = res.data
that.setData({
Cash: jsonObject[0].Cash,
Violation: jsonObject[0].Violation,
Hincome: jsonObject[0].Hincome
})
Cash = jsonObject[0].Cash,
Violation = jsonObject[0].Violation,
Hincome = jsonObject[0].Hincome
},
fail: function (res) {
console.log('submit fail');
wx.showModal({
title: '查询失败',
content: '数据库中没有您的数据',
showCancel: false,
cancelText: '',
cancelColor: '',
confirmText: '确定',
confirmColor: '',
success: function(res) {},
fail: function(res) {},
complete: function(res) {},
})
},
})
解决方法就是不用jsonObject,直接用cash=res.data.cash取值。