|
@@ -3,7 +3,10 @@ export function inDetailsKey(key, obj) {
|
|
|
let list = []
|
|
|
list = getDetailsKey() ? getDetailsKey() : []
|
|
|
if (list.find(e => e.key == key)) {
|
|
|
- list.fill({key: key,...obj},list.findIndex(item => item.key == key),list.findIndex(item => item.key == key)+1)
|
|
|
+ list.fill({
|
|
|
+ key: key,
|
|
|
+ ...obj
|
|
|
+ }, list.findIndex(item => item.key == key), list.findIndex(item => item.key == key) + 1)
|
|
|
sessionStorage.setItem('detailsKeyData', JSON.stringify(list))
|
|
|
} else {
|
|
|
list.push({
|
|
@@ -23,3 +26,40 @@ export function leaveDetailsKey(key) {
|
|
|
export function getDetailsKey() {
|
|
|
return JSON.parse(sessionStorage.getItem("detailsKeyData"))
|
|
|
}
|
|
|
+//关闭当前tabs,清除key并执行解锁接口
|
|
|
+export function delTabsKey(key) {
|
|
|
+ let list = []
|
|
|
+ list = getDetailsKey() ? getDetailsKey() : []
|
|
|
+ let data = list.find(e => e.key == key)
|
|
|
+ if (data) {
|
|
|
+ //执行解锁接口
|
|
|
+
|
|
|
+
|
|
|
+ //执行完接口清除key
|
|
|
+ leaveDetailsKey(key)
|
|
|
+ }
|
|
|
+}
|
|
|
+//关闭其他或者全部tabs,清除key并执行解锁接口
|
|
|
+export function delAllTabsKey(key) {
|
|
|
+ let list = []
|
|
|
+ list = getDetailsKey() ? getDetailsKey() : []
|
|
|
+ if (key == '首页') {
|
|
|
+ //关闭所有或者当前为首页的其他tab
|
|
|
+ list.forEach(e => {
|
|
|
+ //执行解锁
|
|
|
+
|
|
|
+ //执行完接口清除key
|
|
|
+ leaveDetailsKey(e.key)
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ //其他tab
|
|
|
+ list.forEach(e => {
|
|
|
+ if (e.key != key) {
|
|
|
+ //执行解锁
|
|
|
+
|
|
|
+ //执行完接口清除key
|
|
|
+ leaveDetailsKey(e.key)
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+}
|