Skip to content

Commit 8949fca

Browse files
committed
dev: css panel
1 parent 0d2ab2c commit 8949fca

File tree

4 files changed

+60
-64
lines changed

4 files changed

+60
-64
lines changed

packages/sparrow-client/src/components/CssPanel/Layout/index.vue

Lines changed: 52 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -2,53 +2,38 @@
22
<div class="layout-box">
33
<css-item label="布局模式">
44
<div>
5-
<s-radio-group
6-
:value="cssForm.display"
7-
:list="layoutList"
8-
@change="layoutStyleChange('display', $event)"
9-
/>
5+
<s-radio-group v-model="cssForm.display" :list="layoutList" />
106
</div>
117
</css-item>
128
<css-item>
13-
<box-model
14-
:boxModelForm="cssForm.boxModelForm"
15-
@change="boxModelChange"
16-
/>
17-
</css-item>
18-
<css-item label="主轴方向">
19-
<s-radio-group
20-
:value="cssForm.display"
21-
:list="flexDirectionList"
22-
@change="layoutStyleChange('display', $event)"
23-
/>
9+
<box-model :boxModelForm="cssForm.boxModelForm" />
2410
</css-item>
11+
<div v-show="cssForm.display === 'flex'">
12+
<css-item label="主轴方向">
13+
<s-radio-group
14+
v-model="cssForm.flexDirection"
15+
:list="flexDirectionList"
16+
/>
17+
</css-item>
2518

26-
<css-item label="主轴对齐">
27-
<s-radio-group
28-
:value="cssForm.display"
29-
:list="justifyContentList"
30-
@change="layoutStyleChange('display', $event)"
31-
/>
32-
</css-item>
19+
<css-item label="主轴对齐">
20+
<s-radio-group
21+
v-model="cssForm.justifyContent"
22+
:list="justifyContentList"
23+
/>
24+
</css-item>
3325

34-
<css-item label="辅轴对齐">
35-
<s-radio-group
36-
:value="cssForm.display"
37-
:list="alignItemsList"
38-
@change="layoutStyleChange('display', $event)"
39-
/>
40-
</css-item>
26+
<css-item label="辅轴对齐">
27+
<s-radio-group v-model="cssForm.alignItems" :list="alignItemsList" />
28+
</css-item>
4129

42-
<css-item label="换行">
43-
<s-radio-group
44-
:value="cssForm.display"
45-
:list="flexWrapList"
46-
@change="layoutStyleChange('display', $event)"
47-
/>
48-
</css-item>
30+
<css-item label="换行">
31+
<s-radio-group v-model="cssForm.flexWrap" :list="flexWrapList" />
32+
</css-item>
33+
</div>
4934

5035
<css-item>
51-
<size />
36+
<size :size="cssForm.size" />
5237
</css-item>
5338
</div>
5439
</template>
@@ -62,12 +47,16 @@ export default {
6247
CssItem,
6348
SRadioGroup,
6449
BoxModel,
65-
Size,
50+
Size
6651
},
6752
data() {
6853
return {
6954
cssForm: {
7055
display: '',
56+
flexDirection: '',
57+
justifyContent: '',
58+
alignItems: '',
59+
flexWrap: '',
7160
boxModelForm: {
7261
margin_top: '',
7362
margin_bottom: '',
@@ -88,77 +77,77 @@ export default {
8877
{
8978
label: '内联布局 inline',
9079
icon: '内联',
91-
value: 'inline',
80+
value: 'inline'
9281
},
9382
{
9483
label: '弹性布局 flex',
9584
icon: '弹性',
96-
value: 'flex',
85+
value: 'flex'
9786
},
9887
{
9988
label: '块级布局 block',
10089
icon: '块级',
101-
value: 'block',
90+
value: 'block'
10291
},
10392
{
10493
label: '行内块级 inline-block',
10594
icon: '行内块',
106-
value: 'inline-block',
95+
value: 'inline-block'
10796
},
10897
{
10998
label: '隐藏',
11099
icon: '隐藏',
111-
value: 'none',
100+
value: 'none'
112101
}
113102
],
114103
flexDirectionList: [
115104
{
116105
label: 'row',
117106
icon: '水平',
118-
value: 'row',
107+
value: 'row'
119108
},
120109
{
121110
label: 'column',
122111
icon: '垂直',
123-
value: 'column',
112+
value: 'column'
124113
},
125114
{
126115
label: 'row-reverse',
127116
icon: '逆水平',
128-
value: 'row-reverse',
117+
value: 'row-reverse'
129118
},
130119
{
131120
label: 'column-reverse',
132121
icon: '逆垂直',
133-
value: 'column-reverse',
122+
value: 'column-reverse'
134123
}
135124
],
136125
justifyContentList: [
137126
{
138127
label: 'flex-start',
139128
icon: '左对',
140-
value: 'flex-start',
129+
value: 'flex-start'
141130
},
142131
{
143132
label: 'flex-end',
144133
icon: '右对',
145-
value: 'flex-end',
134+
value: 'flex-end'
146135
},
147136
{
148137
label: 'center',
149138
icon: '中心',
150-
value: 'center',
139+
value: 'center'
151140
},
152141
{
153142
label: 'space-between',
154143
icon: '两端',
155-
value: 'space-between',
144+
value: 'space-between'
156145
},
157146
{
158147
label: 'space-around',
159148
icon: '横向平',
160-
value: 'space-around',
161-
},
149+
value: 'space-around'
150+
}
162151
],
163152
alignItemsList: [
164153
{
@@ -213,8 +202,15 @@ export default {
213202
}
214203
},
215204
boxModelChange() {}
205+
},
206+
watch: {
207+
cssForm: {
208+
handler: function(val, oldVal) {
209+
this.$emit('change', this.cssForm);
210+
},
211+
deep: true
212+
}
216213
}
217214
};
218215
</script>
219-
<style lang="scss" scoped>
220-
</style>
216+
<style lang="scss" scoped></style>

packages/sparrow-client/src/components/CssPanel/RadioGroup/index.vue

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,10 @@
2020
</template>
2121
<script>
2222
export default {
23+
model: {
24+
prop: 'value',
25+
event: 'change'
26+
},
2327
props: {
2428
list: {
2529
type: Array,
@@ -34,9 +38,7 @@ export default {
3438
if (this.value === value) {
3539
value = '';
3640
}
37-
this.$emit('change', {
38-
value,
39-
});
41+
this.$emit('change', value);
4042
}
4143
}
4244
}

packages/sparrow-client/src/components/CssPanel/Size/index.vue

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@
66
</label>
77
<div>
88
<el-input
9+
v-model="size.width"
910
size="mini"
1011
placeholder="请输入内容"
11-
@input="sizeChange"
1212
></el-input>
1313
</div>
1414
</div>
@@ -18,9 +18,9 @@
1818
</label>
1919
<div>
2020
<el-input
21+
v-model="size.height"
2122
size="mini"
2223
placeholder="请输入内容"
23-
@input="sizeChange"
2424
></el-input>
2525
</div>
2626
</div>

packages/sparrow-view/src/views/index.vue

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,7 @@
33
class="home drag-box"
44
data-id="126fac8d"
55
style="backgroundImage: url(https://p9-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/dded9db02e3f4052bbf451f04d3d9b5b~tplv-k3u1fbpfcp-zoom-1.image);"
6-
>
7-
<div />
8-
</div>
6+
/>
97
</template>
108

119
<script>

0 commit comments

Comments
 (0)