首页 > 其他分享 >直播软件搭建,vue3应用elementPlus table并滚动显示

直播软件搭建,vue3应用elementPlus table并滚动显示

时间:2022-11-23 14:11:17浏览次数:56  
标签:elementPlus 滚动 vue3 table dom1 data

直播软件搭建,vue3应用elementPlus table并滚动显示

1、首先使用了element plus的table

 

<template>
  <div>
    <el-table
      ref="table1"
      :data="state.data"
      height="250"
    >
      <el-table-column prop="station" label="站点" width="90" align="center" />
      <el-table-column prop="city" label="地市" width="55" align="center" />
      <el-table-column prop="date" label="日期" width="75" align="center" />
      <el-table-column prop="level" label="等级" width="70" align="center" />
    </el-table>
  </div>
</template>
 

2、设置定时器

 

<script setup>
import { reactive, onMounted, ref } from "vue";
import { getWaterData as getDataApi } from "@/modules/api/home";
const state = reactive({
  data: [],
});
const table1 = ref();
onMounted(() => {
  getDataApi().then((data) => {//获取数据
    state.data = data;
    scroll(table1.value.$refs.bodyWrapper);//设置滚动
  });
});
</script>
<script>
//scroll方法不用对外,所以放在<script>里了
const scroll = (tableBody) => {
  let isScroll = true;
  const dom1 = tableBody.getElementsByClassName("el-scrollbar__wrap")[0];
  //鼠标放上去,停止滚动;移开,继续滚动
  dom1.addEventListener("mouseover", () => {
    isScroll = false;
  });
  dom1.addEventListener("mouseout", () => {
    isScroll = true;
  });
  setInterval(() => {
    if (isScroll) {
      dom1.scrollTop += 1;
      if (dom1.clientHeight + dom1.scrollTop == dom1.scrollHeight) {
        dom1.scrollTop = 0;
      }
    }
  }, 100);
};
</script>

 

 以上就是 直播软件搭建,vue3应用elementPlus table并滚动显示,更多内容欢迎关注之后的文章

 

标签:elementPlus,滚动,vue3,table,dom1,data
From: https://www.cnblogs.com/yunbaomengnan/p/16918103.html

相关文章

  • 搭建vue3脚手架
    vite搭建脚手架:npminitvite@latest(y)yvite-demoVueTypeScriptvue搭建脚手架:PSD:\personalSite>npminitvue@latestnpmWARNconfigglobal--global,--loc......
  • 解决在Vue3中html2canvas图片跨域问题
    <divv-html="transformImg(textContent.policyInterpretation)"class="topicContent"></div>consttransformImg=(str)=>{constreplaceCallback=(m,......
  • Oracle中ALTER TABLE的五种用法(二)
    首发微信公众号:SQL数据库运维原文链接:https://mp.weixin.qq.com/s?__biz=MzI1NTQyNzg3MQ==&mid=2247485212&idx=1&sn=450e9e94fa709b5eeff0de371c62072b&chksm=ea37536cdd......
  • Vue3学习笔记(七)—— 状态管理、Vuex、Pinia
    一、状态管理1.1、什么是状态管理?理论上来说,每一个Vue组件实例都已经在“管理”它自己的响应式状态了。我们以一个简单的计数器组件为例:<scriptsetup>import{re......
  • VUE3 全局共享数据方案之一 (简单快速实现类似vuex)
    自定义封装单列模式!globalstate由于vue3的响应式系统本身可以脱离组件而存在,因此可以充分利用这一点,轻松制造多个全局响应式数据,并且通过和vuex一样通过某个模块指定......
  • 关于echars在vue3中的使用
    根文件的配置<!--App.vue--><template><router-view></router-view></template><script>import*asechartsfrom'echarts'import{provide}from......
  • 对el-table进行二次封装
    新建组件:<template><divclass="table-container"><el-table:data="tableData"width="100%":height="height":row-style="{height......
  • Bootstrap-Table 表格插件
    Bootstrap-Table表格插件个人学习关注32018.10.2022:44:16字数2,382阅读97,623JS插件文档库邀你一起协同创作-简书Bootstrap-TableBootstraptable是一......
  • CompletableFuture异步编程
    1、创建/***publicstatic<U>CompletableFuture<U>supplyAsync(Supplier<U>supplier){..}*publicstatic<U>CompletableFuture<U>supplyAsync(Suppl......
  • Vue2 + antdv 动态修改a-table的行的值的数据
    需求:在如下编辑页面的表格中,点击编辑,弹出频段编辑页面。修改完后数据回传并更新表单数据,不要通过后台。实现步骤:1.点击编辑时记录行号2.传递当前记录到子页面3.子......