userStore.js 563 B

1234567891011121314151617181920212223242526272829303132
  1. import { defineStore } from 'pinia';
  2. import http from '../common/request'
  3. export default defineStore('userStore', {
  4. state: () => {
  5. return {
  6. userInfo: {}
  7. }
  8. },
  9. actions: {
  10. setUserInfo(userInfo) {
  11. this.userInfo = userInfo;
  12. },
  13. clear() {
  14. this.userInfo = {};
  15. },
  16. loadUser() {
  17. return new Promise((resolve, reject) => {
  18. http({
  19. url: '/user/self',
  20. method: 'GET'
  21. }).then((userInfo) => {
  22. console.log(userInfo)
  23. this.setUserInfo(userInfo);
  24. resolve();
  25. }).catch((res) => {
  26. reject(res);
  27. });
  28. })
  29. }
  30. }
  31. })