fix(Layout): gutter calculation (#6197)
* Revert "fix(Layout): outside of the screen after setting gutter (#6143)"
This reverts commit a460425b26.
* fix(Layout): gutter calculation
* test: fix snapshot
This commit is contained in:
+6
-19
@@ -16,28 +16,15 @@ export default createComponent({
|
||||
},
|
||||
|
||||
computed: {
|
||||
gutter() {
|
||||
return (this.parent && Number(this.parent.gutter)) || 0;
|
||||
},
|
||||
|
||||
style() {
|
||||
const { index, gutter } = this;
|
||||
|
||||
if (gutter) {
|
||||
const count = this.parent.children.length;
|
||||
const padding = (gutter * (count - 1)) / count;
|
||||
|
||||
if (index === 0) {
|
||||
return { paddingRight: `${padding}px` };
|
||||
}
|
||||
|
||||
if (index === count - 1) {
|
||||
return { paddingLeft: `${padding}px` };
|
||||
}
|
||||
const { index } = this;
|
||||
const { spaces } = this.parent || {};
|
||||
|
||||
if (spaces && spaces[index]) {
|
||||
const { left, right } = spaces[index];
|
||||
return {
|
||||
paddingLeft: `${padding / 2}px`,
|
||||
paddingRight: `${padding / 2}px`,
|
||||
paddingLeft: left ? `${left}px` : null,
|
||||
paddingRight: right ? `${right}px` : null,
|
||||
};
|
||||
}
|
||||
},
|
||||
|
||||
@@ -23,8 +23,8 @@ exports[`renders demo correctly 1`] = `
|
||||
<div>
|
||||
<div class="van-row">
|
||||
<div class="van-col van-col--8" style="padding-right: 13.333333333333334px;">span: 8</div>
|
||||
<div class="van-col van-col--8" style="padding-left: 6.666666666666667px; padding-right: 6.666666666666667px;">span: 8</div>
|
||||
<div class="van-col van-col--8" style="padding-left: 13.333333333333334px;">span: 8</div>
|
||||
<div class="van-col van-col--8" style="padding-left: 6.666666666666666px; padding-right: 6.666666666666668px;">span: 8</div>
|
||||
<div class="van-col van-col--8" style="padding-left: 13.333333333333332px;">span: 8</div>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
||||
|
||||
exports[`gutter prop 1`] = `
|
||||
<div class="van-row">
|
||||
<div class="van-col van-col--24">24</div>
|
||||
<div class="van-col van-col--12" style="padding-right: 12px;">12</div>
|
||||
<div class="van-col van-col--12" style="padding-left: 12px;">12</div>
|
||||
<div class="van-col van-col--8" style="padding-right: 16px;">8</div>
|
||||
<div class="van-col van-col--8" style="padding-left: 8px; padding-right: 8px;">8</div>
|
||||
<div class="van-col van-col--8" style="padding-left: 16px;">8</div>
|
||||
<div class="van-col van-col--6" style="padding-right: 18px;">6</div>
|
||||
<div class="van-col van-col--6" style="padding-left: 6px; padding-right: 12px;">6</div>
|
||||
<div class="van-col van-col--6" style="padding-left: 12px; padding-right: 6px;">6</div>
|
||||
<div class="van-col van-col--6" style="padding-left: 18px;">6</div>
|
||||
<div class="van-col van-col--7" style="padding-right: 18px;">7</div>
|
||||
<div class="van-col van-col--6" style="padding-left: 6px; padding-right: 12px;">6</div>
|
||||
<div class="van-col van-col--5" style="padding-left: 12px; padding-right: 6px;">5</div>
|
||||
<div class="van-col van-col--4" style="padding-left: 18px;">4</div>
|
||||
<div class="van-col van-col--3" style="padding-right: 12px;">3</div>
|
||||
<div class="van-col van-col--2" style="padding-left: 12px;">2</div>
|
||||
</div>
|
||||
`;
|
||||
@@ -15,3 +15,34 @@ test('Row click event', () => {
|
||||
|
||||
expect(wrapper.emitted('click')).toBeTruthy();
|
||||
});
|
||||
|
||||
test('gutter prop', () => {
|
||||
const wrapper = mount({
|
||||
template: `
|
||||
<van-row gutter="24">
|
||||
<van-col span="24">24</van-col>
|
||||
|
||||
<van-col span="12">12</van-col>
|
||||
<van-col span="12">12</van-col>
|
||||
|
||||
<van-col span="8">8</van-col>
|
||||
<van-col span="8">8</van-col>
|
||||
<van-col span="8">8</van-col>
|
||||
|
||||
<van-col span="6">6</van-col>
|
||||
<van-col span="6">6</van-col>
|
||||
<van-col span="6">6</van-col>
|
||||
<van-col span="6">6</van-col>
|
||||
|
||||
<van-col span="7">7</van-col>
|
||||
<van-col span="6">6</van-col>
|
||||
<van-col span="5">5</van-col>
|
||||
<van-col span="4">4</van-col>
|
||||
<van-col span="3">3</van-col>
|
||||
<van-col span="2">2</van-col>
|
||||
</van-row>
|
||||
`,
|
||||
});
|
||||
|
||||
expect(wrapper).toMatchSnapshot();
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user