App.vue 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. <script>
  2. /**
  3. * vuex管理登陆状态,具体可以参考官方登陆模板示例
  4. */
  5. import { mapState,mapMutations} from 'vuex';
  6. import authorize from '@/common/config/authorize.js'
  7. export default {
  8. onLaunch: function() {
  9. this.refresh()
  10. let _self = this;
  11. uni.getSystemInfo({
  12. success: res => {
  13. let modelmes = res.model;
  14. if (modelmes.search('iPhone X') != -1) { //XS,XR,XS MAX均可以适配
  15. this.$store.dispatch('setVariableFun',true)
  16. }
  17. // uni.setStorageSync('modelmes', modelmes)
  18. }
  19. })
  20. },
  21. methods:{
  22. getCheekeyCode(){// 根据微信的code获取用户登录状态:1已登录过 -1未登录过
  23. authorize.getCode('weixin').then(wechatcode =>{
  24. // console.log(wechatcode);
  25. this.$api.get('/login/doLogin',{userOrganizeID:this.userOrganizeID,code:wechatcode},
  26. response =>{
  27. // console.log(response);
  28. if(response.code == '1'){
  29. let user_key = {code:response.code,openid:response.data.openid,userID:response.data.userID}
  30. this.$store.commit('updateStatus',user_key)
  31. // uni.setStorageSync('cookieKey','JSESSIONID='+response.data.sessionId)
  32. }else{
  33. let user_key = {code:response.code,tel:response.data,userID:'',openid:''}
  34. this.$store.commit('updateStatus',user_key)
  35. }
  36. }
  37. )
  38. })
  39. },
  40. refresh(){
  41. let TIME = (20*60)*1000;
  42. let self = this;
  43. setInterval(function(){
  44. self.getCheekeyCode()
  45. },TIME)
  46. }
  47. },
  48. onShow: function() {
  49. console.log('App Show')
  50. uni.setStorageSync('token','token')
  51. },
  52. onHide: function() {
  53. console.log('App Hide')
  54. },
  55. }
  56. </script>
  57. <style lang="scss">
  58. /*每个页面公共css */
  59. @import "@/common/css/common.scss";
  60. @import "@/common/css/iconfont.scss";
  61. view,
  62. scroll-view,
  63. swiper,
  64. swiper-item,
  65. cover-view,
  66. cover-image,
  67. icon,
  68. text,
  69. rich-text,
  70. progress,
  71. button,
  72. checkbox,
  73. form,
  74. input,
  75. label,
  76. radio,
  77. slider,
  78. switch,
  79. textarea,
  80. navigator,
  81. audio,
  82. camera,
  83. image,
  84. video {
  85. // box-sizing: border-box;
  86. }
  87. page{
  88. height: 100%;
  89. background-color: #FFFFFF;
  90. }
  91. /* 骨架屏替代方案 */
  92. .Skeleton {
  93. background: #f3f3f3;
  94. padding: 20upx 0;
  95. border-radius: 8upx;
  96. }
  97. .clamp {
  98. overflow: hidden;
  99. text-overflow: ellipsis;
  100. white-space: nowrap;
  101. display: block;
  102. }
  103. .common-hover {
  104. background: #f5f5f5;
  105. }
  106. /* input 样式 */
  107. .input-placeholder {
  108. color: #999999;
  109. }
  110. .placeholder {
  111. color: #999999;
  112. }
  113. </style>