1
0

login.js 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. /**
  2. * 普通用户登录
  3. */
  4. // 获取用户信息
  5. export function getUserInfo() {
  6. return new Promise((resolve, reject) => {
  7. uni.getUserProfile({
  8. lang: 'zh_CN',
  9. desc: '用户登录', // 声明获取用户个人信息后的用途,后续会展示在弹窗中,
  10. success: (res) => {
  11. console.log(res, 'resss')
  12. resolve(res.userInfo)
  13. },
  14. fail: (err) => {
  15. reject(err)
  16. }
  17. })
  18. })
  19. }
  20. export function getLogin() {
  21. return new Promise((resolve, reject) => {
  22. uni.login({
  23. success(res) {
  24. console.log('----------getLogin ---------')
  25. console.log(res)
  26. resolve(res)
  27. },
  28. fail: (err) => {
  29. console.log(err, 'logoer')
  30. reject(err)
  31. }
  32. })
  33. })
  34. }
  35. export function wxLogin() {
  36. uni.getProvider({
  37. service: 'oauth',
  38. success: function(res) {
  39. //支持微信、qq和微博等
  40. if (~res.provider.indexOf('weixin')) {
  41. console.log(res, 'ress')
  42. let _userInfo = getUserInfo();
  43. let _loginRes = getLogin();
  44. Promise.all([_userInfo, _loginRes]).then((res) => {
  45. let userInfo = res[0];
  46. let loginRes = res[1];
  47. if (loginRes.errMsg == 'login:ok') {
  48. uni.$tm.vx.commit('user/setWxLoginInfo', {
  49. avatarUrl: userInfo.avatarUrl,
  50. nickName: userInfo.nickName,
  51. email: '',
  52. url: ''
  53. });
  54. uni.showToast({
  55. icon: 'none',
  56. title: '登录成功!'
  57. })
  58. } else {
  59. uni.showToast({
  60. icon: 'none',
  61. title: '登录失败,请重试!'
  62. })
  63. }
  64. }).catch(err => {
  65. uni.showToast({
  66. icon: 'none',
  67. title: '登录失败,请重试!'
  68. })
  69. })
  70. }
  71. },
  72. fail: function(err) {
  73. uni.showToast({
  74. icon: 'none',
  75. title: '登录失败,请重试!'
  76. })
  77. }
  78. })
  79. }
  80. export function appWxLogin() {
  81. uni.login({
  82. provider: 'weixin',
  83. success: function(loginRes) {
  84. // 获取用户信息
  85. uni.getUserInfo({
  86. provider: 'weixin',
  87. success: function(infoRes) {
  88. uni.$tm.vx.commit('user/setWxLoginInfo', {
  89. avatarUrl: infoRes.userInfo.avatarUrl,
  90. nickName: infoRes.userInfo.nickName,
  91. email: '',
  92. url: ''
  93. });
  94. uni.showToast({
  95. icon: 'none',
  96. title: '登录成功!'
  97. })
  98. },
  99. fail: function(err) {
  100. uni.showToast({
  101. icon: 'none',
  102. title: '登录失败,请重试!'
  103. })
  104. }
  105. });
  106. }
  107. });
  108. }