模块树转脑图
This commit is contained in:
parent
1b541ab4fc
commit
0e5494cbe2
|
@ -0,0 +1,104 @@
|
||||||
|
<template>
|
||||||
|
<div class="minder">
|
||||||
|
<minder-editor v-if="isActive"
|
||||||
|
class="minder-container"
|
||||||
|
:import-json="importJson"
|
||||||
|
@save="save"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: "MsModuleMinder",
|
||||||
|
components: {},
|
||||||
|
props: {
|
||||||
|
treeNodes: {
|
||||||
|
type: Array,
|
||||||
|
default() {
|
||||||
|
return []
|
||||||
|
}
|
||||||
|
},
|
||||||
|
data: {
|
||||||
|
type: Array,
|
||||||
|
default() {
|
||||||
|
return []
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
importJsonTest: {
|
||||||
|
"root": {
|
||||||
|
"data": {
|
||||||
|
"text": "test111"
|
||||||
|
},
|
||||||
|
"children": [
|
||||||
|
{ "data": { "text": "新闻"}},
|
||||||
|
{ "data": { "text": "网页"} },
|
||||||
|
{ "data": { "text": "贴吧"} },
|
||||||
|
{ "data": { "text": "知道"} },
|
||||||
|
{ "data": { "text": "音乐" } },
|
||||||
|
{ "data": { "text": "图片"} },
|
||||||
|
{ "data": { "text": "视频"} },
|
||||||
|
{ "data": { "text": "地图" } },
|
||||||
|
{ "data": { "text": "百科","expandState":"collapse"}}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"template":"default"
|
||||||
|
},
|
||||||
|
importJson: {
|
||||||
|
root: {
|
||||||
|
data: {
|
||||||
|
text: "全部用例",
|
||||||
|
disable: true
|
||||||
|
},
|
||||||
|
children: []
|
||||||
|
},
|
||||||
|
"template":"default"
|
||||||
|
},
|
||||||
|
isActive: true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
mounted() {
|
||||||
|
this.$nextTick(() => {
|
||||||
|
this.parse(this.importJson.root, this.treeNodes);
|
||||||
|
this.reload();
|
||||||
|
})
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
save(data) {
|
||||||
|
console.log(data);
|
||||||
|
// console.log(this.treeNodes);
|
||||||
|
},
|
||||||
|
parse(root, children) {
|
||||||
|
if (children == null || children.length < 1) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
root.children = [];
|
||||||
|
children.forEach((item) => {
|
||||||
|
let node = {
|
||||||
|
data: {
|
||||||
|
text: item.name,
|
||||||
|
id: item.id,
|
||||||
|
disable: true,
|
||||||
|
// resource: ['#']
|
||||||
|
},
|
||||||
|
}
|
||||||
|
root.children.push(node);
|
||||||
|
this.parse(node, item.children);
|
||||||
|
})
|
||||||
|
},
|
||||||
|
reload() {
|
||||||
|
this.isActive = false;
|
||||||
|
this.$nextTick(() => {
|
||||||
|
this.isActive = true;
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
</style>
|
|
@ -17,8 +17,8 @@
|
||||||
<ms-tab-button
|
<ms-tab-button
|
||||||
:active-dom.sync="activeDom"
|
:active-dom.sync="activeDom"
|
||||||
:left-tip="'用例列表'"
|
:left-tip="'用例列表'"
|
||||||
:left-content="'CAS'"
|
:left-content="'CASE'"
|
||||||
:right-tip="'E脑图'"
|
:right-tip="'脑图'"
|
||||||
:right-content="'脑图'"
|
:right-content="'脑图'"
|
||||||
:middle-button-enable="false">
|
:middle-button-enable="false">
|
||||||
<test-case-list
|
<test-case-list
|
||||||
|
@ -38,6 +38,7 @@
|
||||||
ref="testCaseList">
|
ref="testCaseList">
|
||||||
</test-case-list>
|
</test-case-list>
|
||||||
<testcase-minder
|
<testcase-minder
|
||||||
|
:tree-nodes="treeNodes"
|
||||||
v-if="activeDom === 'right'"
|
v-if="activeDom === 'right'"
|
||||||
ref="testCaseList"/>
|
ref="testCaseList"/>
|
||||||
</ms-tab-button>
|
</ms-tab-button>
|
||||||
|
@ -97,7 +98,7 @@ import MsMainContainer from "../../common/components/MsMainContainer";
|
||||||
import {checkoutTestManagerOrTestUser, getCurrentProjectID, getUUID, hasRoles} from "../../../../common/js/utils";
|
import {checkoutTestManagerOrTestUser, getCurrentProjectID, getUUID, hasRoles} from "../../../../common/js/utils";
|
||||||
import TestCaseNodeTree from "../common/TestCaseNodeTree";
|
import TestCaseNodeTree from "../common/TestCaseNodeTree";
|
||||||
import {TrackEvent,LIST_CHANGE} from "@/business/components/common/head/ListEvent";
|
import {TrackEvent,LIST_CHANGE} from "@/business/components/common/head/ListEvent";
|
||||||
import TestcaseMinder from "@/business/components/track/case/components/minder/TestcaseMinder";
|
import TestcaseMinder from "@/business/components/common/components/MsModuleMinder";
|
||||||
import MsTabButton from "@/business/components/common/components/MsTabButton";
|
import MsTabButton from "@/business/components/common/components/MsTabButton";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
|
@ -365,4 +366,8 @@ export default {
|
||||||
padding: 15px;
|
padding: 15px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/deep/ .el-button-group>.el-button:first-child {
|
||||||
|
padding: 4px 1px !important;
|
||||||
|
}
|
||||||
|
|
||||||
</style>
|
</style>
|
||||||
|
|
|
@ -1,13 +0,0 @@
|
||||||
<template>
|
|
||||||
$END$
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
export default {
|
|
||||||
name: "TestcaseMinder"
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style scoped>
|
|
||||||
|
|
||||||
</style>
|
|
|
@ -1,41 +1,25 @@
|
||||||
<template>
|
<template>
|
||||||
<div class="minder">
|
<ms-module-minder
|
||||||
<minder-editor class="minder-container" :import-json="importJson"/>
|
:tree-nodes="treeNodes"/>
|
||||||
</div>
|
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
import MsModuleMinder from "@/business/components/common/components/MsModuleMinder";
|
||||||
export default {
|
export default {
|
||||||
name: "TestcaseMinder",
|
name: "TestcaseMinder",
|
||||||
components: {},
|
components: {MsModuleMinder},
|
||||||
data() {
|
props: {
|
||||||
return {
|
treeNodes: {
|
||||||
importJson: {
|
type: Array,
|
||||||
"root": {
|
default() {
|
||||||
"data": {
|
return []
|
||||||
"text": "test111"
|
|
||||||
},
|
|
||||||
"children": [
|
|
||||||
{ "data": { "text": "新闻"}},
|
|
||||||
{ "data": { "text": "网页"} },
|
|
||||||
{ "data": { "text": "贴吧"} },
|
|
||||||
{ "data": { "text": "知道"} },
|
|
||||||
{ "data": { "text": "音乐" } },
|
|
||||||
{ "data": { "text": "图片"} },
|
|
||||||
{ "data": { "text": "视频"} },
|
|
||||||
{ "data": { "text": "地图" } },
|
|
||||||
{ "data": { "text": "百科","expandState":"collapse"}}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"template":"default"
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted() {
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped>
|
<style scoped>
|
||||||
|
|
||||||
</style>
|
</style>
|
||||||
|
|
Loading…
Reference in New Issue