user.js 798 B

12345678910111213141516171819202122232425262728293031
  1. import { defineStore } from 'pinia'
  2. import { reactive } from 'vue'
  3. import { setToken } from '@/utils/auth'
  4. import { smsLogin } from '@/api/common/index'
  5. export const userLocaleStore = defineStore('user',
  6. () => {
  7. let userInfo = reactive({})
  8. const handleLogin = async (data) => {
  9. console.log(data, 'login-params')
  10. return new Promise((resolve, reject) => {
  11. smsLogin(data).then(res => {
  12. const { data } = res
  13. console.log(data, 'res-login')
  14. setToken(data.accessToken)
  15. userInfo = data
  16. localStorage.setItem('expiresTime', data.expiresTime) // token过期时间
  17. resolve()
  18. }).catch(err => { reject(err) })
  19. })
  20. }
  21. return {
  22. userInfo,
  23. handleLogin
  24. }
  25. },
  26. {
  27. persist: true,
  28. }
  29. )