vue 自定指令生成uuid滚动监听达到tab表格吸顶效果的代码


Posted in Javascript onSeptember 16, 2020

vue 自定指令生成uuid滚动监听达到tab表格吸顶效果的代码

 utils/index,.js

/**
 * 生成UUID
 * @param withSeparator 是否有分割符
 * @returns {string}
 */
export function generateUUID(withSeparator = true) {
 let d = new Date().getTime()
 if (window.performance && typeof window.performance.now === 'function') {
  d += performance.now()
 }
 const tpl = withSeparator ? 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx' : 'xxxxxxxxxxxx4xxxyxxxxxxxxxxxxxxx'
 return tpl.replace(/[xy]/g, function(c) {
  const r = (d + Math.random() * 16) % 16 | 0
  d = Math.floor(d / 16)
  return (c === 'x' ? r : (r & 0x3 | 0x8)).toString(16)
 })
}

创建一个generate-uuid/index.js自定义指令文件

import { generateUUID } from '@/utils'
const generateUuid = {
 inserted(el, binding) {
  const { value } = binding
  if (!value) {
   const hasUUID = generateUUID(value)
   el.setAttribute('data-uuid', hasUUID)
   if (!hasUUID) {
    el.parentNode && el.parentNode.removeChild(el)
   }
  }
 }
}
generateUuid.install = function(Vue) {
 Vue.directive('generate-uuid', generateUuid)
}
 
export default generateUuid

main.js引入

import GenerateUUID from '@/directive/generate-uuid'
Vue.use(GenerateUUID)

页面使用

<el-table
   v-generate-uuid="false"
  >

vue 自定指令生成uuid滚动监听达到tab表格吸顶效果的代码

使用uuid元素方法

const topRow = this.$refs.multipleTable
   const hash = topRow.$el.dataset.uuid
   const tableHeader = document.querySelector(`.el-table[data-uuid="${hash}"] .el-table__header-wrapper`)
   if (tableHeader) {
    tableHeader.style.width = topRow.$el.getBoundingClientRect().width + 'px'
   }

总结

到此这篇关于vue 自定指令生成uuid滚动监听达到tab表格吸顶效果的代码的文章就介绍到这了,更多相关vue滚动监听tab表格吸顶内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
可以支持多中格式的JS键盘
May 02 Javascript
关于firefox的ElementTraversal 接口 使用说明
Nov 11 Javascript
jquery基础教程之deferred对象使用方法
Jan 22 Javascript
鼠标悬浮显示二级菜单效果的jquery实现
Oct 29 Javascript
AngularJS点击添加样式、点击变色设置的实例代码
Jul 27 Javascript
vue.js声明式渲染和条件与循环基础知识
Jul 31 Javascript
详解Vue2.0 事件派发与接收
Sep 05 Javascript
angularjs http与后台交互的实现示例
Dec 21 Javascript
layui多iframe页面控制定时器运行的方法
Sep 05 Javascript
关于layui toolbar和template的结合使用方法
Sep 19 Javascript
js实现炫酷光感效果
Sep 05 Javascript
vue-video-player视频播放器使用配置详解
Oct 23 Javascript
vue中选中多个选项并且改变选中的样式的实例代码
Sep 16 #Javascript
vue实现div可拖动位置也可改变盒子大小的原理
Sep 16 #Javascript
Vue项目打包编译优化方案
Sep 16 #Javascript
Vue封装Axios请求和拦截器的步骤
Sep 16 #Javascript
如何在JS文件中获取Vue组件
Sep 16 #Javascript
javascript自定义加载loading效果
Sep 15 #Javascript
图解JS原型和原型链实现原理
Sep 15 #Javascript
You might like
全国FM电台频率大全 - 11 浙江省
2020/03/11 无线电
老生常谈PHP数组函数array_merge(必看篇)
2017/05/25 PHP
Ecshop 后台添加新功能栏目及管理权限设置教程
2017/11/21 PHP
PHP中Static(静态)关键字功能与用法实例分析
2019/04/05 PHP
类之Prototype.js学习
2007/06/13 Javascript
jQuery 标题的自动翻转实现代码
2009/10/14 Javascript
firefox下input type=&quot;file&quot;的size是多大
2011/10/24 Javascript
form表单中去掉默认的enter键提交并绑定js方法实现代码
2013/04/01 Javascript
jQuery实现仿腾讯微博滑出效果报告每日天气的方法
2015/05/11 Javascript
javascript中使用正则表达式清理table样式的代码
2020/04/01 Javascript
程序员必知35个jQuery 代码片段
2015/11/05 Javascript
jQuery-mobile事件监听与用法详解
2016/11/23 Javascript
Node连接mysql数据库方法介绍
2017/02/07 Javascript
原生JS实现不断变化的标签
2017/05/22 Javascript
bootstrap自定义样式之bootstrap实现侧边导航栏功能
2018/09/10 Javascript
JavaScript实现抖音罗盘时钟
2019/10/11 Javascript
[02:23]完美世界全国高校联赛街访DOTA2第一期
2019/11/28 DOTA
python中将字典形式的数据循环插入Excel
2018/01/16 Python
对python sklearn one-hot编码详解
2018/07/10 Python
python消除序列的重复值并保持顺序不变的实例
2018/11/08 Python
python匿名函数的使用方法解析
2019/10/10 Python
Python使用turtle库绘制小猪佩奇(实例代码)
2020/01/16 Python
对python中 math模块下 atan 和 atan2的区别详解
2020/01/17 Python
Django 后台带有字典的列表数据与页面js交互实例
2020/04/03 Python
基于Python测试程序是否有错误
2020/05/16 Python
python上selenium的弹框操作实现
2020/07/13 Python
详解java调用python的几种用法(看这篇就够了)
2020/12/10 Python
html5+css3进度条倒计时动画特效代码【推荐】
2016/03/08 HTML / CSS
recorder.js 基于Html5录音功能的实现
2020/05/26 HTML / CSS
捷克厨房用品购物网站:Tescoma
2018/07/13 全球购物
举例说明类变量和实例变量的区别
2016/06/30 面试题
大一学生假期实习的自我评价
2013/10/12 职场文书
法学专业毕业生自荐信
2014/06/11 职场文书
2014年技术部工作总结
2014/12/12 职场文书
Python自动化实战之接口请求的实现
2022/05/30 Python
delete in子查询不走索引问题分析
2022/07/07 MySQL