Skip to content
This repository was archived by the owner on May 12, 2021. It is now read-only.

Commit 8781f44

Browse files
committed
feat: 替换panel插件
1 parent ea71c35 commit 8781f44

File tree

3 files changed

+46
-17
lines changed

3 files changed

+46
-17
lines changed

package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,8 @@
3333
"splitpanes": "^2.1.1",
3434
"throttle-debounce": "^2.1.0",
3535
"vue-codemirror": "^4.0.6",
36-
"vue-element-loading": "^1.1.5"
36+
"vue-element-loading": "^1.1.5",
37+
"vue-multipane": "^0.9.5"
3738
},
3839
"devDependencies": {
3940
"@commitlint/cli": "^8.3.5",

src/components/vue-run-sfc-main.vue

Lines changed: 39 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<template>
22
<component
3-
:is="isRow && isExpanded ? 'splitpanes' : 'div'"
3+
:is="isRow && isExpanded ? 'multipane' : 'div'"
44
:class="{
55
'default-theme': isRow,
66
'vue-run-sfc-main-reverse': isExpanded && !isRow && reverse
@@ -9,12 +9,13 @@
99
class="vue-run-sfc-main"
1010
>
1111
<template v-if="isRow && isExpanded">
12-
<pane style="overflow-y: auto">
12+
<div class="vue-run-sfc-main-pane" style="overflow-y: auto;width: 50%;">
1313
<slot name="editor"></slot>
14-
</pane>
15-
<pane style="overflow-y: auto">
14+
</div>
15+
<multipane-resizer></multipane-resizer>
16+
<div class="vue-run-sfc-main-pane" style="overflow-y: auto;flexGrow: 1">
1617
<slot name="preview"></slot>
17-
</pane>
18+
</div>
1819
</template>
1920
<template v-else>
2021
<slot v-if="isExpanded" name="editor"></slot>
@@ -24,14 +25,13 @@
2425
</template>
2526

2627
<script>
27-
import { Splitpanes, Pane } from 'splitpanes'
28-
import 'splitpanes/dist/splitpanes.css'
28+
import { Multipane, MultipaneResizer } from 'vue-multipane'
2929
3030
export default {
3131
name: 'vue-run-sfc-main',
3232
components: {
33-
Splitpanes,
34-
Pane
33+
Multipane,
34+
MultipaneResizer
3535
},
3636
props: {
3737
isRow: Boolean,
@@ -49,7 +49,7 @@ export default {
4949
z-index: 1;
5050
box-sizing: border-box;
5151
overflow-y: auto;
52-
border: 1px solid var(--vue-run-sfc-border, #ebeef5);
52+
border: 1px solid #ebeef5;
5353
border-top: none;
5454
}
5555
@@ -62,13 +62,36 @@ export default {
6262
.vue-run-sfc-main-reverse .vue-run-sfc-editor {
6363
border-top: 1px solid #eaeefb;
6464
}
65-
/* 拖拽看板样式 */
66-
.splitpanes.default-theme .splitpanes__pane {
67-
background: white;
65+
66+
.vue-run-sfc-main-pane {
67+
text-align: left;
68+
overflow: hidden;
69+
}
70+
.vue-run-sfc-main > .multipane-resizer {
71+
margin: 0;
72+
left: 0;
73+
position: relative;
74+
border-left: 1px solid #ebeef5;
75+
border-right: 1px solid #ebeef5;
76+
}
77+
.vue-run-sfc-main > .multipane-resizer:before {
78+
display: block;
79+
content: '';
80+
width: 3px;
81+
height: 40px;
82+
position: absolute;
83+
top: 50%;
84+
left: 50%;
85+
margin-top: -20px;
86+
margin-left: -2.5px;
87+
border-left: 1px solid #ccc;
88+
border-right: 1px solid #ccc;
89+
}
90+
.vue-run-sfc-main > .multipane-resizer:hover:before {
91+
border-color: #999;
6892
}
6993
70-
.vue-run-sfc-main.splitpanes--vertical > .splitpanes__splitter {
71-
border-left: 1px solid var(--vue-run-sfc-border, #ebeef5);
72-
border-right: 1px solid var(--vue-run-sfc-border, #ebeef5);
94+
.vue-run-sfc-main.layout-v > .multipane-resizer {
95+
height: auto;
7396
}
7497
</style>

yarn.lock

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11251,6 +11251,11 @@ vue-loader@^15.7.0:
1125111251
vue-hot-reload-api "^2.3.0"
1125211252
vue-style-loader "^4.1.0"
1125311253

11254+
vue-multipane@^0.9.5:
11255+
version "0.9.5"
11256+
resolved "https://registry.npm.taobao.org/vue-multipane/download/vue-multipane-0.9.5.tgz#10ddaf9092e0a9e761edfd0d1f1db8bbb54b3e9c"
11257+
integrity sha1-EN2vkJLgqedh7f0NHx24u7VLPpw=
11258+
1125411259
vue-style-loader@^4.1.0:
1125511260
version "4.1.2"
1125611261
resolved "https://registry.npm.taobao.org/vue-style-loader/download/vue-style-loader-4.1.2.tgz#dedf349806f25ceb4e64f3ad7c0a44fba735fcf8"

0 commit comments

Comments
 (0)