<script>
// 1、uni-app的页面生命周期仅在page页面有效，而单独封装的组件中【页面周期无效】，
//但是Vue的生命周期依然有效 【Vue的生命周期在任何地方都是有效的，即你仍然可以在uni-app项目中使用Vue生命周期，但是不建议这么做】
// 2、推荐使用uni-app里面的onLoad 代替 vue 里面的 created
// 3、推荐使用uni-app里面的onReady 代替 vue 里面的 mounted
//4.setStorageSync与setStorage的区别:如果后续的操作需要使用更新storage后保存的data，则使用setStorageSync使用异步性能更好，使用同步数据更安全
export default {
  onLaunch: function(options) { //初始化完成时触发（全局只触发一次
    let today = this.$commonjs.today()
    let oldDate = uni.getStorageSync('oldDate')
    //大于7天重新登录
    if (oldDate) {
      let number = this.$commonjs.dateDifference(today, oldDate)
      if (number > 7) {
        uni.clearStorageSync()
      }
    } else {
      //用于处理这个功能之前登录过的用户，未保存登录时间
      uni.clearStorageSync()
    }
    let path = options.path
    uni.setStorageSync('enterOptions', options)
    let token = uni.getStorageSync('token')||''
    if (!token && path.indexOf('pages/payment/ourPayment/ourPayment') == -1) { //扫码支付页面不需要在此登录
      setTimeout(() => { //解决关联普通二维码扫码首次进入时一直显示登录中
        uni.navigateTo({
          url: '/pages/login/login'
        })
      }, 300)
    }
    //#ifdef MP-WEIXIN
    uni.setStorageSync('appid', 'wxe678d5240e98a7b8')
    //#endif

    //#ifdef MP-ALIPAY
    uni.setStorageSync('appid', '2021001194629244')
    if (options.query && options.query.qrCode) {
      uni.setStorageSync('alipayQrCode', options.query.qrCode)
    } else {
      uni.removeStorageSync('alipayQrCode')
    }
    //#endif
    /* 版本自动更新代码 */
    const updateManager = uni.getUpdateManager()
    updateManager.onCheckForUpdate(function (res) {
      console.log('是否有更新：' + res.hasUpdate) // 请求完新版本信息的回调 true说明有更新
    })
    updateManager.onUpdateReady(function () {
      uni.showModal({
        title: '更新检测', // 此处可自定义提示标题
        showCancel:false,
        content: '检测到新版本，请点击确认按钮重启小程序？', // 此处可自定义提示消息内容
        success: function (res) {
          if (res.confirm) {
            // 新的版本已经下载好，调用 applyUpdate 应用新版本并重启
            updateManager.applyUpdate()
          }
        }
      })
    })
    updateManager.onUpdateFailed(function () {
      // 新的版本下载失败
      uni.showModal({
        title: '更新提示',
        content: '新版本下载失败',
        showCancel: false
      })
    })
  },
  onShow: function() {

  },
  onHide: function() {

  }
}
</script>

<style lang="scss">
	@import "uview-ui/index.scss";

	/*
1.页面背景颜色#f7f7f7
2.分隔线颜色#DBDBDB
3.正常字体颜色#333333
4.灰色字体颜色#666666或者#999999
5.主题颜色#3688FF
6.正常字体大小28rpx,偏小一点的24rpx
8.页面最外层与里面的第一层为padding:0 12px;
9.css单位为rpx
*/
	page {
		font-size: 28rpx;
		color: #333333;
		background: #F7F7F7;
		height:100vh;
	}

	view,
	text,
	image,
	video,
	button,
	checkbox,
	form,
	input,
	label,
	radio,
	switch,
	textarea {
		box-sizing: border-box;
	}

	.btn {
		background: linear-gradient(132deg, #ED400C 0%, #FB862C 100%);
		display: inline-block;
		color: #FFFFFF;
		font-size: 28rpx;
		border-radius: 8rpx;
		text-align: center;
		padding: 10rpx 20rpx;
	}

	/*单行溢出*/
	.one-txt-cut {
		overflow: hidden;
		white-space: nowrap;
		text-overflow: ellipsis;
	}

	/*多行溢出 手机端使用*/
	.txt-cut {
		overflow: hidden;
		text-overflow: ellipsis;
		display: -webkit-box;
		/* -webkit-line-clamp: 2; */
		-webkit-box-orient: vertical;
	}
	//设置checkbox背景色
	checkbox.blue[checked] .wx-checkbox-input,
	checkbox.blue.checked .uni-checkbox-input{
		background-color: #3688FF !important;
		border-color: #3688FF !important;
		color: #ffffff !important;
	}
</style>
