fix ivu-table-fixed bug

This commit is contained in:
huanghong 2018-03-21 15:24:31 +08:00
parent 8744e122ee
commit 95e1720ce3
4 changed files with 15 additions and 3 deletions

View file

@ -11,6 +11,12 @@
<div style='margin:20px 0px'>
<Table :height='200' border :columns="columns2" :data="data3"></Table>
</div>
<div style='margin:20px 0px'>
<Table :width='500' border :columns="columns2" :data="data3"></Table>
</div>
<div style='margin:20px 0px'>
<Table :width='500' :height='200' border :columns="columns2" :data="data3"></Table>
</div>
<div style='margin:20px 0px;'>
<Table :data="tableData1" :columns="tableColumns1" :height='500' stripe size='small'></Table>
<div style="margin: 10px;overflow: hidden">

View file

@ -25,7 +25,10 @@ export default {
width = this.columnsWidth[column._index].width;
}
// when browser has scrollBar,set a width to resolve scroll position bug
if (width && this.columns.length === index + 1 && top && this.$parent.bodyHeight !== 0) {
if(this.columns.length==7 && column.fixed){
console.log(column);
}
if (width && this.columns.length === index + 1 && top && this.$parent.bodyHeight !== 0 && column.fixed!=='left' && !this.fixed) {
let scrollBarWidth = this.$parent.scrollBarWidth;
if (!this.$parent.showVerticalScrollBar) scrollBarWidth = 0;
width += scrollBarWidth;

View file

@ -87,6 +87,9 @@
const style = Object.assign({}, this.styleObject);
let scrollBarWidth = this.$parent.scrollBarWidth;
if(!this.$parent.showVerticalScrollBar) scrollBarWidth = 0;
let isLeftFixed = this.$el && this.$el.parentElement.className.indexOf('fixed-header')>0;
if(isLeftFixed) scrollBarWidth = 0;
const width = this.$parent.bodyHeight === 0 ? parseInt(this.styleObject.width) : parseInt(this.styleObject.width) + scrollBarWidth;
style.width = `${width}px`;
return style;

View file

@ -314,7 +314,7 @@
if (col.fixed && col.fixed === 'left') {
left.push(col);
} else {
other.push(col);
//other.push(col);
}
});
return left.concat(other);
@ -326,7 +326,7 @@
if (col.fixed && col.fixed === 'right') {
right.push(col);
} else {
other.push(col);
//other.push(col);
}
});
return right.concat(other);