依赖:
package.json:
"vue-seamless-scroll": "^1.1.23",
页面:
import vueSeamlessScroll from "vue-seamless-scroll";
div:
<div class="alarm_table_content">
<el-table
class="table-class"
:data="alarmData.length > 5 ? headData : alarmData"
:border="false"
:style="
alarmData.length > 5
? 'height:30px;width: 100%;'
: 'height:100%;width: 100%;'
"
>
<el-table-column
type="index"
width="50"
label="序号"
align="center"
/>
<el-table-column
:show-overflow-tooltip="true"
prop="content"
label="报警内容"
align="center"
/>
<el-table-column
:show-overflow-tooltip="true"
prop="time"
label="报警时间"
align="center"
/>
</el-table>
<vue-seamless-scroll
v-if="alarmData.length > 5"
:data="alarmData"
class="seamless-warp"
:class-option="classOption"
>
<el-table
class="table-class"
:data="alarmData"
:show-header="false"
:border="false"
:style="
'height:' + alarmData.length * 30 + 'px;width:100%;'
"
:class-option="classOption"
>
<el-table-column
type="index"
width="50"
label="序号"
align="center"
/>
<el-table-column
:show-overflow-tooltip="true"
prop="content"
label="报警内容"
align="center"
/>
<el-table-column
:show-overflow-tooltip="true"
prop="time"
label="报警时间"
align="center"
/>
</el-table>
</vue-seamless-scroll>
</div>
js:
computed: {
classOption() {
return {
step: 0.2,
limitMoveNum: 2,
hoverStop: true,
direction: 1,
openWatch: true,
singleHeight: 0,
singleWidth: 0,
waitTime: 1000,
};
},
},
css:
.seamless-warp {
width: 100%;
height: calc(100% - 35px);
// height: 100%;
overflow: hidden;
}