<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){
				this.$http('', { code }).then(res => {
					console.log("获得用户信息", res);
				})
			},
			// 登录
			login(){
				this.checkSession().then(code => {
					this.userCode(code);
				}).catch(err => {
					uni.login({
						complete: 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>
