userInfo.ts 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. //引入pinia
  2. import { defineStore } from 'pinia'
  3. import { ref } from 'vue'
  4. const userInfoStore = defineStore(
  5. 'userInfo',
  6. () => {
  7. //定义正在进行中的计划
  8. const planCurrentNum = ref<number>(0)
  9. //定义已完成但是未读的测试记录
  10. const unreadNum = ref<number>(0)
  11. //定义token
  12. const token = ref<string>('')
  13. //定义用户信息
  14. const userInfo = ref<any>({
  15. account: ''
  16. })
  17. //信息--查看是否做过了练习测试
  18. const isPass = ref<boolean>(false)
  19. //将通过状态改变为通过false
  20. const saveIspass = () => {
  21. isPass.value = true;
  22. }
  23. //保存正在进行中的计划的文本
  24. const savePlanCurrentNum = (val: number) => {
  25. planCurrentNum.value = val
  26. }
  27. //保存已完成的测试记录-但是未读的
  28. const saveUnreadNum = (val: number) => {
  29. unreadNum.value = val;
  30. }
  31. //保存token信息
  32. const saveToken = (val: string) => {
  33. token.value = val
  34. }
  35. //保存用户信息
  36. const saveUserInfo = (val: any) => {
  37. //重置用户信息
  38. userInfo.value = val
  39. }
  40. //清除用户信息
  41. const clearUserInfo = () => {
  42. userInfo.value = { account: '' }
  43. token.value = ''
  44. isPass.value = false
  45. planCurrentNum.value = 0
  46. unreadNum.value = 0
  47. }
  48. return { planCurrentNum, clearUserInfo, savePlanCurrentNum, token, saveToken, userInfo, saveUserInfo, isPass, saveIspass, unreadNum, saveUnreadNum }
  49. },
  50. { persist: true }
  51. )
  52. export { userInfoStore }