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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
| // 面包屑数据
| import { defineStore } from 'pinia'
| import tool from '@/assets/js/toolClass.js'
| export const useBreadcrumbStore = defineStore('breadcrumb', () => {
| const crumbList = localStorage.getItem('crumbs')
| ? JSON.parse(localStorage.getItem('crumbs'))
| : {
| home: {}, // 首页
| bookService: {}, // 图书服务
| digitalCourse: {}, // 数字课程
| digitalBook: {}, // 数字教材
| seminar: {}, // 数字教材
| shoppingCart: {}, // 购物车
| personalCenter: {}, //个人中心
| retrievalPage: {}, //全局检索
| digitalCourses: {}, //数字课程
| digitalTextbooks: {} //数字教材
| }
| // 面包屑
| const changeCrumbs = (data: any) => {
| switch (data.type) {
| case 'home':
| data.data.unshift({
| name: '首页',
| // isCrumbs: true,
| path: '/home'
| })
| break
| case 'bookService':
| data.data.unshift({
| name: '图书服务',
| // isCrumbs: true,
| path: '/bookService'
| })
| break
| case 'personalCenter':
| data.data.unshift({
| name: '个人中心',
| // isCrumbs: true,
| path: '/personalCenter'
| })
| break
| case 'retrievalPage':
| data.data.unshift({
| name: '全局检索',
| // isCrumbs: true,
| path: '/retrievalPage'
| })
| break
| case 'digitalCourses':
| data.data.unshift({
| name: '数字课程',
| // isCrumbs: true,
| path: '/digitalCourses'
| })
| break
| case 'digitalTextbooks':
| data.data.unshift({
| name: '数字教材',
| // isCrumbs: true,
| path: '/digitalTextbooks'
| })
| break
| case 'shoppingCart':
| data.data.unshift({
| name: '购物车',
| path: '/shoppingCart'
| })
| }
| if (!crumbList[data.type].keys) {
| crumbList[data.type].keys = []
| }
| crumbList[data.type].keys.push(data.cid)
| crumbList[data.type][data.cid] = data.data
| if (crumbList[data.type].keys.length > 20) {
| const key = crumbList[data.type].keys[0]
| delete crumbList[data.type][key]
| crumbList[data.type].keys.splice(0, 1)
| }
| localStorage.setItem('crumbs', JSON.stringify(crumbList))
| }
|
| const setCrumbs = (data: any) => {
| // 存储面包屑
| if (!data.cid) {
| data.cid = tool.uuid(8)
| }
| changeCrumbs(data)
| if (data.callback) data.callback(data.cid)
| }
|
| return {
| crumbList,
| setCrumbs
| }
| })
|
|