原因:query.get 方闭汪雀法是异步的(小轿早程序的请求方法基本都是异步执行),所以程序会先执行updatePostData()方法 。而此时数陵败据detail并未绑定数据,所以自然拿不到前面设定的值
解决方案:
在query.get执行完毕后的回调函数调用updatePostData()方法.
使用fetch...then...
<view @click=getUserInfo">获取微信信息</view>
// 获取用户信息
getUserInfo() {
if(this.isShow){//防止多次点击
this.isShow = false
uni.getUserProfile ({
desc: "获取个人信息",
携困嫌 success: (res) =>{
this.userInfo = res.userInfo
this.isShow = true
},
辩手 fail: getUserProfileFail =>{
this.isShow = true
uni.showToast({
title: '授权失败',
mask: false,
duration: 1000,
icon: 'none',
})
}
})
}
},
<button type="default" open-type="getPhoneNumber" @getphonenumber="ongetPhoneNumber">授权获取手机号登录</button>
// 获取手机号码
ongetPhoneNumber(e) {
if (e.detail.errMsg == "getPhoneNumber:fail user deny") { //用户拒绝授权
//拒绝授权后d出一些提示
uni.showToast({
title: '拒绝授权',
mask: false,
duration: 1000,
icon: 'none',
})
} else { //允许授权
app.postData('url',{
key: app.globalData.session_key,
尺迅 encryptedData: e.detail.encryptedData,
iv: e.detail.iv
}).then(res=>{
console.log("获取手机号码",res)
this.mobile = res.data.phoneNumber
uni.setStorageSync('xmfTel',res.data.phoneNumber)
}).catch(err=>{
console.log(err)
})
}
},
通告没山过wx.request获取到服袜中务器数据之后将数据(一个json对象)绑定至post数组,然后页面中获取数据的时候可以直接通过(数组名.属性)直接取值。数组中有多个json对象的话,则需要wx:for遍历取值。单个json对象察中数据绑定
页面取值:
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)