he wei
2024-11-06 32250f9a1db456b706e52ffb2664d738a2650678
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
import { defineStore } from "pinia";
 
export const useUserStore = defineStore("user", {
  state() {
    return {
      uid: localStorage.getItem("uid"),
      uname: localStorage.getItem("uname"),
      lastUname: localStorage.getItem("lastuname"),
      rememberList: localStorage.getItem("rememberList") || "[]",
    };
  },
  actions: {
    setName(value) {
      this.uname = value;
      localStorage.setItem("uname", value);
      this.lastUname = value;
      localStorage.setItem("lastuname", value);
    },
    setId(value) {
      this.uid = value;
      localStorage.setItem("uid", value);
    },
    addRemember(name, snId) {
      // 判断名字是否存在  不存在就插入 存在就更新
      if (!this.list.some((v) => v.name == name)) {
        this.list.push({ name, snId });
      } else {
        this.list.forEach((v) => {
          if (v.name == name) {
            v.snId = snId;
          }
        });
      }
      this.updateList();
    },
    removeRemember(value) {
      let list = this.list.filter((v) => v.name != value);
      this.list.length = 0;
      this.list.push(...list);
      this.updateList();
    },
    // 更新rememberList
    updateList() {
      let str = JSON.stringify(this.list);
      this.rememberList = str;
      localStorage.setItem("rememberList", str);
    },
  },
  getters: {
    list(state) {
      // console.log('state', state == this, '=============');
      return JSON.parse(state.rememberList);
    },
  },
});