You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
159 lines
5.2 KiB
159 lines
5.2 KiB
<script>
|
|
export default {
|
|
globalData: {
|
|
|
|
},
|
|
onLaunch: function() {
|
|
this.login(); // 校验登录态 TODO 等待与后端对接
|
|
},
|
|
onShow: function() {
|
|
// #ifdef MP-WEIXIN
|
|
this.getUpdateWexin(); // 小程序更新检查
|
|
// #endif
|
|
},
|
|
onHide: function() {
|
|
console.log('App Hide')
|
|
},
|
|
methods: {
|
|
// 接口code换取用户信息
|
|
userCode(code){
|
|
return console.log("code", code);
|
|
this.$http('', { code }).then(res => {
|
|
console.log("获得用户信息", res);
|
|
})
|
|
},
|
|
// 登录
|
|
login(){
|
|
this.checkSession().then(code => {
|
|
this.userCode(code);
|
|
}).catch(err => {
|
|
uni.login({
|
|
complete: result => {
|
|
console.log(result)
|
|
if(result.errMsg == 'login:ok'){
|
|
let code = result.code;
|
|
uni.setStorageSync('login_token', code);
|
|
this.userCode(code);
|
|
}
|
|
}
|
|
})
|
|
});
|
|
},
|
|
// 校验登录态是否过期,如果没有过期还要判断本地有没有token
|
|
checkSession(){
|
|
return new Promise((resolve, reject) => {
|
|
uni.checkSession({
|
|
complete: result => {
|
|
if(result.errMsg == 'checkSession:ok'){ // 处于登录状态 session未过期
|
|
let login_token = uni.getStorageSync();
|
|
if(login_token){
|
|
resolve(login_token);
|
|
}else{
|
|
reject(); // 本地没有token,重新调取登录
|
|
}
|
|
}else{ // session已过期,需要重新登录
|
|
reject();
|
|
}
|
|
}
|
|
})
|
|
});
|
|
},
|
|
// 小程序版本更新检查
|
|
getUpdateWexin(){
|
|
const updateManager = uni.getUpdateManager(); // 获取版本更新管理器对象
|
|
updateManager.onCheckForUpdate(function(res) {
|
|
// 请求完新版本信息的回调
|
|
if (res.hasUpdate) {
|
|
updateManager.onUpdateReady(function(res2) {
|
|
uni.showModal({
|
|
title: '更新提示',
|
|
content: '发现新版本,是否重启应用?',
|
|
confirmColor: '#FE9903',
|
|
showCancel: false,
|
|
success(res2) {
|
|
if (res2.confirm) {
|
|
// 新的版本已经下载好,调用applyUpdate应用新版本并重启
|
|
updateManager.applyUpdate();
|
|
}
|
|
}
|
|
});
|
|
});
|
|
}
|
|
});
|
|
|
|
updateManager.onUpdateFailed(function(res) {
|
|
// 新的版本下载失败
|
|
uni.showModal({
|
|
title: '提示',
|
|
content: '检查到有新版本,但下载失败,请检查网络设置',
|
|
confirmColor: '#FE9903',
|
|
success(res) {
|
|
if (res.confirm) {
|
|
// 新的版本已经下载好,调用 applyUpdate 应用新版本并重启
|
|
updateManager.applyUpdate();
|
|
}
|
|
}
|
|
});
|
|
});
|
|
}
|
|
}
|
|
}
|
|
</script>
|
|
|
|
<style lang="scss">
|
|
@import "uview-ui/index.scss";
|
|
@import './colorui/main.css';
|
|
@import './colorui/icon.css';
|
|
@import "@/colorui/animation.css";
|
|
@import '@/common/styles/common.css';
|
|
/*每个页面公共css */
|
|
//底部按钮
|
|
.btn-bottom {
|
|
position: fixed;
|
|
left: 0;
|
|
bottom: 0;
|
|
width: 100%;
|
|
z-index: 1;
|
|
}
|
|
|
|
// loading加载
|
|
.loading-more {
|
|
align-items: center;
|
|
justify-content: center;
|
|
padding-top: 10px;
|
|
padding-bottom: 10px;
|
|
text-align: center;
|
|
font-size: 28rpx;
|
|
color: #999;
|
|
}
|
|
.loading-more-text::before {
|
|
content: '';
|
|
width: 20px;
|
|
height: 20px;
|
|
display: inline-block;
|
|
vertical-align: middle;
|
|
-webkit-animation: weuiLoading 1s steps(12, end) infinite;
|
|
animation: weuiLoading 1s steps(12, end) infinite;
|
|
background-repeat: no-repeat;
|
|
background-image: url("data:image/svg+xml;charset=utf8, %3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 100 100'%3E%3Cpath fill='none' d='M0 0h100v100H0z'/%3E%3Crect width='7' height='20' x='46.5' y='40' fill='%23E9E9E9' rx='5' ry='5' transform='translate(0 -30)'/%3E%3Crect width='7' height='20' x='46.5' y='40' fill='%23989697' rx='5' ry='5' transform='rotate(30 105.98 65)'/%3E%3Crect width='7' height='20' x='46.5' y='40' fill='%239B999A' rx='5' ry='5' transform='rotate(60 75.98 65)'/%3E%3Crect width='7' height='20' x='46.5' y='40' fill='%23A3A1A2' rx='5' ry='5' transform='rotate(90 65 65)'/%3E%3Crect width='7' height='20' x='46.5' y='40' fill='%23ABA9AA' rx='5' ry='5' transform='rotate(120 58.66 65)'/%3E%3Crect width='7' height='20' x='46.5' y='40' fill='%23B2B2B2' rx='5' ry='5' transform='rotate(150 54.02 65)'/%3E%3Crect width='7' height='20' x='46.5' y='40' fill='%23BAB8B9' rx='5' ry='5' transform='rotate(180 50 65)'/%3E%3Crect width='7' height='20' x='46.5' y='40' fill='%23C2C0C1' rx='5' ry='5' transform='rotate(-150 45.98 65)'/%3E%3Crect width='7' height='20' x='46.5' y='40' fill='%23CBCBCB' rx='5' ry='5' transform='rotate(-120 41.34 65)'/%3E%3Crect width='7' height='20' x='46.5' y='40' fill='%23D2D2D2' rx='5' ry='5' transform='rotate(-90 35 65)'/%3E%3Crect width='7' height='20' x='46.5' y='40' fill='%23DADADA' rx='5' ry='5' transform='rotate(-60 24.02 65)'/%3E%3Crect width='7' height='20' x='46.5' y='40' fill='%23E2E2E2' rx='5' ry='5' transform='rotate(-30 -5.98 65)'/%3E%3C/svg%3E");
|
|
background-size: 100%;
|
|
}
|
|
@-webkit-keyframes weuiLoading {
|
|
0% {
|
|
transform: rotate3d(0, 0, 1, 0deg);
|
|
}
|
|
|
|
100% {
|
|
transform: rotate3d(0, 0, 1, 360deg);
|
|
}
|
|
}
|
|
@keyframes weuiLoading {
|
|
0% {
|
|
transform: rotate3d(0, 0, 1, 0deg);
|
|
}
|
|
|
|
100% {
|
|
transform: rotate3d(0, 0, 1, 360deg);
|
|
}
|
|
}
|
|
</style>
|