今天測試給我提了一個布局問題:效果圖如下:
他的測試方式比較奇葩,是不停的切換上面的标簽頁,然後就出現了上圖的錯位問題。
百度後發現也有其他人提到這個錯位問題:
不過他們的錯誤基本是表格資料改變時,表格錯位。
是以解決辦法是:
思路就是:
watch
監聽表格資料的變化,如果變化,則重新渲染表格。
watch: {
tableData(val) {
this.doLayout();
}
},
methods:{
doLayout() {
this.$nextTick(() => {
this.$refs.table.doLayout()
})
}
}
很顯然,我現在的情況并非如此,既然網上都說是因為添加了
fixed
導緻的表格錯位
我直接簡單粗暴的把
fixed
去掉就可以了。。。
事實證明,确實可以了。但是
fixed
存在的意義在于,當表格橫向内容比較多時,可以将操作按鈕固定,友善人為操作。是以去掉
fixed
的方法并不是很人性化。
最後經過一系列排查和非人類的試探後,總結如下:
- 操作一列中,fixed=“right”,需要指定寬度 width
- 與操作列相鄰的一列不加width,其他的列指定寬度
如下圖所示:表格中的所有列都加上width,與操作列相鄰的一列不要加。
最終效果: