App.vue 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. <script>
  2. export default {
  3. onLaunch: function() {
  4. var cachedOpenid = uni.getStorageSync('openid')
  5. if (!cachedOpenid) {
  6. uni.login({
  7. provider: 'weixin',
  8. success: function(loginRes) {
  9. if (loginRes && loginRes.code) {
  10. uni.request({
  11. url: 'https://cfc.etotem.com.cn/api/auth/silent-login',
  12. method: 'POST',
  13. data: { code: loginRes.code },
  14. header: { 'Content-Type': 'application/json' },
  15. success: function(res) {
  16. if (res.data && res.data.code === 200 && res.data.data) {
  17. var d = res.data.data
  18. uni.setStorageSync('token', d.token)
  19. uni.setStorageSync('openid', d.openid)
  20. uni.setStorageSync('userId', d.userId)
  21. uni.setStorageSync('userInfo', {
  22. nickname: d.nickname,
  23. userId: d.userId,
  24. familyId: d.familyId
  25. })
  26. }
  27. },
  28. fail: function() {
  29. uni.showToast({ title: '网络请求失败', icon: 'none' })
  30. }
  31. })
  32. }
  33. }
  34. })
  35. }
  36. }
  37. }
  38. </script>
  39. <style>
  40. page { background-color: #F8F8F8; font-size: 28rpx; color: #333; }
  41. </style>