|
|
@@ -93,7 +93,7 @@
|
|
|
<div class="tab_box">
|
|
|
<el-tabs
|
|
|
v-model="editableTabsValue"
|
|
|
- @tab-change="clickTab"
|
|
|
+ @tab-click="clickTab"
|
|
|
@tab-add="addTab"
|
|
|
type="card"
|
|
|
class="common-tabs"
|
|
|
@@ -103,6 +103,7 @@
|
|
|
:key="item.path"
|
|
|
:label="item.label"
|
|
|
:name="item.path"
|
|
|
+ :value="JSON.stringify(item)"
|
|
|
>
|
|
|
<template #label>
|
|
|
<div class="tab_pane">
|
|
|
@@ -367,9 +368,11 @@ const clickPath = (index, items) => {
|
|
|
editableTabsValue.value = items.path;
|
|
|
// console.log("editableTabs", editableTabs.value);
|
|
|
};
|
|
|
-const clickTab = (item) => {
|
|
|
+const clickTab = (item,el) => {
|
|
|
console.log("item", toRaw(item));
|
|
|
+ console.log("el", toRaw(el));
|
|
|
let regExp = new RegExp(/^\//);
|
|
|
+ let regFile = new RegExp(/^tofile/);
|
|
|
if (!regExp.test(toRaw(item))) {
|
|
|
const data = JSON.parse(toRaw(item));
|
|
|
console.log("data", data);
|
|
|
@@ -400,6 +403,17 @@ const addTab = (data) => {
|
|
|
};
|
|
|
const addFolderAdd = (data) => {
|
|
|
console.log("data", data);
|
|
|
+ const arr = toRaw(editableTabs.value);
|
|
|
+ if (!arr.some((item) => item.label == data.row.dirName)) {
|
|
|
+ editableTabs.value.push({
|
|
|
+ label: 'tofile'+data.row.dirName,
|
|
|
+ path:data.path,
|
|
|
+ row: JSON.stringify(data.row),
|
|
|
+ });
|
|
|
+ //需要jSON去转 否则页面无变化 离谱得很
|
|
|
+ editableTabs.value = JSON.parse(JSON.stringify(editableTabs.value));
|
|
|
+ }
|
|
|
+ console.log('editableTabs',editableTabs.value);
|
|
|
};
|
|
|
provide("addTab", addTab);
|
|
|
provide("addFolderAdd", addFolderAdd);
|