首页课程样式

This commit is contained in:
zhaofang
2022-11-08 18:13:37 +08:00
parent d7132efc22
commit 70b14ab53a
7 changed files with 256 additions and 209 deletions

94
store/modules/sysType.js Normal file
View File

@@ -0,0 +1,94 @@
import {getToken} from '@/utils/token'
import apiType from '../../api/modules/type.js'
const state={
sysTypeTree: [], //内容类型
sysTypeMap:null
}
const mutations={
setSysTypeTree: (state, tree) => {
state.sysTypeTree = tree
},
setSysTypeMap: (state, map) => {
state.sysTypeMap = map
},
}
const actions={
getSysTypeTree({commit}) {
return new Promise((resolve,reject)=>{
if(state.sysTypeTree.length>0){
resolve(state.sysTypeTree);
}else{
let hasData = sessionStorage.getItem('sysTypeTree');
if(hasData){
let treeData = JSON.parse(hasData);
commit('setSysTypeTree', treeData);
resolve(treeData);
}else{
apiType.tree(1).then(res=>{
if(res.status === 200) {
sessionStorage.setItem('sysTypeTree',JSON.stringify(res.result));
commit('setSysTypeTree', res.result);
//转化为map放到状态中
let map=new Map();
res.result.forEach(item=>{
map.set(item.id, item.name);
if(item.children && item.children!=''){
item.children.forEach(child=>{
map.set(child.id, child.name);
if(child.children && child.children!=''){
child.children.forEach(last=>{
map.set(last.id, last.name);
})
}
})
}
});
commit('setSysTypeMap', map);
resolve(res.result)
} else {
reject('资源归属获取失败!');
}
})
}
}
});
},
loadSysTypes(context){
if(state.sysTypeMap==null){
let hasData = sessionStorage.getItem('sysTypeMap');
if(hasData){
hasData=JSON.parse(hasData);
}
if(hasData && hasData.length>10){
let map=new Map();
hasData.forEach(item=>{
map.set(item.id, item.name);
});
context.commit('setSysTypeMap',map);
}else{
apiType.list(1,'').then(res=>{
if(res.status === 200) {
let map=new Map();
res.result.forEach(item=>{
map.set(item.id, item.name);
});
//console.log(map,map);
sessionStorage.setItem('sysTypeMap',JSON.stringify(res.result));
context.commit('setSysTypeMap', map);
} else {
console.log('内容分类获取失败!');
}
});
}
}
}
}
export default {
namespaced: true,
state,
mutations,
actions
}