1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
  | <script> 
 |      import { mapState } from 'vuex' 
 |      export default { 
 |          computed: { 
 |              ...mapState(['userInfo','openid']) 
 |          }, 
 |          onLaunch: function() { 
 |              var that = this; 
 |              if (!this.openid || this.openid =='') { 
 |                  uni.login({ 
 |                      provider: 'weixin', 
 |                      success: async function (loginRes) { 
 |                          let { code } = loginRes; 
 |                          let res = await that.$u.api.wxLogin({ code }) 
 |                          if (res && res.code === 200) { 
 |                              that.$store.commit('setToken', res.data.token) 
 |                              that.$store.commit('setOpenid', res.data.openid) 
 |                              that.$store.commit('setUserInfo', res.data.member) 
 |                              uni.getLocation({ 
 |                                  type: 'wgs84', 
 |                                  success: (addr) => { 
 |                                      that.$store.commit('setPosition', { latitude: addr.latitude, longitude: addr.longitude }) 
 |                                      that.$isResolve() 
 |                                  }, 
 |                                  fail: (err) => { 
 |                                      console.error('获取位置失败', err); 
 |                                      that.$isResolve() 
 |                                  } 
 |                              }); 
 |                               
 |                          } 
 |                      } 
 |                  }); 
 |              } else { 
 |                  var that = this 
 |                  let res = this.$u.api.getMemberInfo({}).then(res =>{  
 |                      if (res && res.code === 200) {  
 |                          that.$store.commit('setUserInfo', res.data) 
 |                          uni.getLocation({ 
 |                              type: 'wgs84', 
 |                              success: (addr) => { 
 |                                  that.$store.commit('setPosition', { latitude: addr.latitude, longitude: addr.longitude }) 
 |                                  that.$isResolve() 
 |                              }, 
 |                              fail: (err) => { 
 |                                  console.error('获取位置失败', err); 
 |                                  that.$isResolve() 
 |                              } 
 |                          }); 
 |                      } else { 
 |                          that.$store.commit('setToken','') 
 |                          that.$store.commit('setUserInfo',{}) 
 |                          uni.getLocation({ 
 |                              type: 'wgs84', 
 |                              success: (addr) => { 
 |                                  that.$store.commit('setPosition', { latitude: addr.latitude, longitude: addr.longitude }) 
 |                                  that.$isResolve() 
 |                              }, 
 |                              fail: (err) => { 
 |                                  console.error('获取位置失败', err); 
 |                                  that.$isResolve() 
 |                              } 
 |                          }); 
 |                      } 
 |                  }) 
 |              } 
 |          }, 
 |          onShow: function() { 
 |              console.log('App Show') 
 |          }, 
 |          onHide: function() { 
 |              console.log('App Hide') 
 |          } 
 |      } 
 |  </script> 
 |    
 |  <style lang="scss"> 
 |      @import "uview-ui/index.scss";  
 |  </style> 
 |  
  |