济菏高速业务端
 
 
 
 
 

67 lines
1.6 KiB

const state = {
recentPages: [],
isRecentOpen:"",
}
const mutations = {
saveRecent(state){
sessionStorage.setItem("recentPages", JSON.stringify(state.recentPages));
},
addRecent(state, item) {
if(state.recentPages.length == 0 ){
state.recentPages = JSON.parse(sessionStorage.getItem("recentPages") || "[]");
}
let temp;
state.recentPages.forEach((unit,index)=>{
if(unit.path == item.path){
temp = unit;
temp.active = true;
}else{
unit.active = false;
}
});
if (!temp){
item.active = true;
state.recentPages.push(item);
}
mutations.saveRecent(state);
},
openRecent(state){
state.isRecentOpen = true;
sessionStorage.setItem("isRecentOpen", true);
},
closeRecent(state){
state.isRecentOpen = false;
sessionStorage.setItem("isRecentOpen", false);
},
removeRecent(state, item) {
let i = state.recentPages.findIndex(unit => unit.path == item.path);
state.recentPages.splice(i, 1);
mutations.saveRecent(state);
},
resetRecent(state, para){
state.isRecentOpen = false;
sessionStorage.setItem("isRecentOpen", false);
sessionStorage.removeItem("recentPages")
}
}
const getters = {
isRecentOpen(state){
if (state.isRecentOpen === ""){
state.isRecentOpen = JSON.parse(sessionStorage.getItem("isRecentOpen")) || false;
}
return state.isRecentOpen;
}
}
export default {
namespaced: true,
state,
getters,
mutations,
}