Commit 408b6950469396186a3e891d520565c19371977a
update table example
Showing
7 changed files
with
27 additions
and
17 deletions
Show diff stats
examples/routers/table.vue
| @@ -92,7 +92,8 @@ | @@ -92,7 +92,8 @@ | ||
| 92 | { | 92 | { |
| 93 | title: 'Postcode', | 93 | title: 'Postcode', |
| 94 | key: 'zip', | 94 | key: 'zip', |
| 95 | - width: 100 | 95 | + width: 100, |
| 96 | + fixed: 'right', | ||
| 96 | }, | 97 | }, |
| 97 | { | 98 | { |
| 98 | title: 'Action', | 99 | title: 'Action', |
| @@ -239,4 +240,4 @@ | @@ -239,4 +240,4 @@ | ||
| 239 | } | 240 | } |
| 240 | } | 241 | } |
| 241 | } | 242 | } |
| 242 | -</script> | 243 | -</script> |
| 244 | +</script> | ||
| 243 | \ No newline at end of file | 245 | \ No newline at end of file |
src/components/date-picker/panel/Date/date-range.vue
| @@ -295,9 +295,7 @@ | @@ -295,9 +295,7 @@ | ||
| 295 | const otherPanel = panel === 'left' ? 'right' : 'left'; | 295 | const otherPanel = panel === 'left' ? 'right' : 'left'; |
| 296 | const otherCurrent = new Date(this[`${otherPanel}PanelDate`]); | 296 | const otherCurrent = new Date(this[`${otherPanel}PanelDate`]); |
| 297 | otherCurrent[`set${type}`](otherCurrent[`get${type}`]() + increment); | 297 | otherCurrent[`set${type}`](otherCurrent[`get${type}`]() + increment); |
| 298 | - if (current[`get${type}`]() !== otherCurrent[`get${type}`]()){ | ||
| 299 | - this[`${otherPanel}PanelDate`] = otherCurrent; | ||
| 300 | - } | 298 | + this[`${otherPanel}PanelDate`] = otherCurrent; |
| 301 | } | 299 | } |
| 302 | }, | 300 | }, |
| 303 | showYearPicker (panel) { | 301 | showYearPicker (panel) { |
src/components/date-picker/picker.vue
| @@ -334,7 +334,7 @@ | @@ -334,7 +334,7 @@ | ||
| 334 | if (typeof val === 'string') { | 334 | if (typeof val === 'string') { |
| 335 | val = parser(val, format); | 335 | val = parser(val, format); |
| 336 | } else if (type === 'timerange') { | 336 | } else if (type === 'timerange') { |
| 337 | - val = parser(val, format); | 337 | + val = parser(val, format).map(v => v || ''); |
| 338 | } else { | 338 | } else { |
| 339 | val = val.map(date => new Date(date)); // try to parse | 339 | val = val.map(date => new Date(date)); // try to parse |
| 340 | val = val.map(date => isNaN(date.getTime()) ? null : date); // check if parse passed | 340 | val = val.map(date => isNaN(date.getTime()) ? null : date); // check if parse passed |
src/components/poptip/poptip.vue
| @@ -97,6 +97,9 @@ | @@ -97,6 +97,9 @@ | ||
| 97 | transfer: { | 97 | transfer: { |
| 98 | type: Boolean, | 98 | type: Boolean, |
| 99 | default: false | 99 | default: false |
| 100 | + }, | ||
| 101 | + popperClass: { | ||
| 102 | + type: String | ||
| 100 | } | 103 | } |
| 101 | }, | 104 | }, |
| 102 | data () { | 105 | data () { |
| @@ -120,7 +123,8 @@ | @@ -120,7 +123,8 @@ | ||
| 120 | return [ | 123 | return [ |
| 121 | `${prefixCls}-popper`, | 124 | `${prefixCls}-popper`, |
| 122 | { | 125 | { |
| 123 | - [`${prefixCls}-confirm`]: this.transfer && this.confirm | 126 | + [`${prefixCls}-confirm`]: this.transfer && this.confirm, |
| 127 | + [`${this.popperClass}`]: !!this.popperClass | ||
| 124 | } | 128 | } |
| 125 | ]; | 129 | ]; |
| 126 | }, | 130 | }, |
src/components/table/cell.vue
| 1 | <template> | 1 | <template> |
| 2 | <div :class="classes" ref="cell"> | 2 | <div :class="classes" ref="cell"> |
| 3 | - <template v-if="renderType === 'index'">{{naturalIndex + 1}}</template> | 3 | + <template v-if="renderType === 'index'"><span>{{naturalIndex + 1}}</span></template> |
| 4 | <template v-if="renderType === 'selection'"> | 4 | <template v-if="renderType === 'selection'"> |
| 5 | <Checkbox :value="checked" @click.native.stop="handleClick" @on-change="toggleSelect" :disabled="disabled"></Checkbox> | 5 | <Checkbox :value="checked" @click.native.stop="handleClick" @on-change="toggleSelect" :disabled="disabled"></Checkbox> |
| 6 | </template> | 6 | </template> |
src/components/table/table-head.vue
| @@ -23,6 +23,8 @@ | @@ -23,6 +23,8 @@ | ||
| 23 | v-if="isPopperShow(column)" | 23 | v-if="isPopperShow(column)" |
| 24 | v-model="column._filterVisible" | 24 | v-model="column._filterVisible" |
| 25 | placement="bottom" | 25 | placement="bottom" |
| 26 | + popper-class="ivu-table-popper" | ||
| 27 | + transfer | ||
| 26 | @on-popper-hide="handleFilterHide(column._index)"> | 28 | @on-popper-hide="handleFilterHide(column._index)"> |
| 27 | <span :class="[prefixCls + '-filter']"> | 29 | <span :class="[prefixCls + '-filter']"> |
| 28 | <i class="ivu-icon ivu-icon-funnel" :class="{on: column._isFiltered}"></i> | 30 | <i class="ivu-icon ivu-icon-funnel" :class="{on: column._isFiltered}"></i> |
src/styles/components/table.less
| @@ -357,15 +357,13 @@ | @@ -357,15 +357,13 @@ | ||
| 357 | &-footer{ | 357 | &-footer{ |
| 358 | padding: 4px; | 358 | padding: 4px; |
| 359 | border-top: 1px solid @border-color-split; | 359 | border-top: 1px solid @border-color-split; |
| 360 | - } | ||
| 361 | - } | ||
| 362 | - .ivu-poptip-popper{ | ||
| 363 | - min-width: 0; | ||
| 364 | - text-align: left; | ||
| 365 | - } | ||
| 366 | - thead .ivu-poptip-popper{ | ||
| 367 | - .ivu-poptip-body{ | ||
| 368 | - padding: 0; | 360 | + overflow: hidden; |
| 361 | + button:first-child{ | ||
| 362 | + float: left; | ||
| 363 | + } | ||
| 364 | + button:last-child{ | ||
| 365 | + float: right; | ||
| 366 | + } | ||
| 369 | } | 367 | } |
| 370 | } | 368 | } |
| 371 | 369 | ||
| @@ -383,3 +381,10 @@ | @@ -383,3 +381,10 @@ | ||
| 383 | visibility: hidden; | 381 | visibility: hidden; |
| 384 | } | 382 | } |
| 385 | } | 383 | } |
| 384 | +.ivu-table-popper{ | ||
| 385 | + min-width: 0; | ||
| 386 | + text-align: left; | ||
| 387 | + .ivu-poptip-body{ | ||
| 388 | + padding: 0; | ||
| 389 | + } | ||
| 390 | +} | ||
| 386 | \ No newline at end of file | 391 | \ No newline at end of file |