uni.$u.http.post('player/login', {mobile: this.login.number, password: this.login.password, area: this.login.code}) .then(resp => { if(resp.code == 0) { this.login.number = ''; this.login.password = ''; try { uni.setStorageSync('token', resp.data.token); } catch (e) { console.error(e) } this.toPage('/pages/index/weapon', 'launch'); uni.$emit('afterUserLogin'); } else { this.uUtil.showToast(resp.msg); } }) .finally(() => { this.$hideLoading(); })
时间: 2023-06-19 09:09:31 浏览: 141
解决vue bus.$emit触发第一次$on监听不到问题
5星 · 资源好评率100%
这段代码是使用uni-app框架中的$http模块向服务器发送一个POST请求,请求的地址是'player/login'。请求的数据是一个对象,包含三个属性:mobile、password和area。请求成功后,如果返回的code等于0,则将number和password清空,并将服务器返回的token存储到本地缓存中。然后跳转到'/pages/index/weapon'页面,并通过uni.$emit('afterUserLogin')触发一个自定义事件。如果返回的code不等于0,则显示服务器返回的错误信息。不管请求成功还是失败,最后都会执行finally中的代码,隐藏Loading图标。
阅读全文