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 相关文章推荐
extjs grid取到数据而不显示的解决
Dec 29 Javascript
Span元素的width属性无效果原因及解决方案
Jan 15 Javascript
javascript 操作select下拉列表框的一点小经验
Mar 20 Javascript
IE6、IE7中setAttribute不支持class/for/rowspan/colspan等属性
Aug 28 Javascript
window.onload与$(document).ready()的区别分析
May 30 Javascript
JavaScript跨域调用基于JSON的RESTful API
Jul 09 Javascript
基于JS实现移动端左滑删除功能
Jul 28 Javascript
使用Vue制作图片轮播组件思路详解
Mar 21 Javascript
Vue作用域插槽slot-scope实例代码
Sep 05 Javascript
从理论角度讨论JavaScript闭包
Apr 03 Javascript
vue+django实现一对一聊天功能的实例代码
Jul 17 Javascript
Vue 3自定义指令开发的相关总结
Jan 29 Vue.js
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
PHP中把stdClass Object转array的几个方法
2014/05/08 PHP
PHP中的替代语法介绍
2015/01/09 PHP
thinkphp3.x连接mysql数据库的方法(具体操作步骤)
2016/05/19 PHP
微信利用PHP创建自定义菜单的方法
2016/08/01 PHP
php批量删除操作代码分享
2017/02/26 PHP
PHP PDOStatement::closeCursor讲解
2019/01/30 PHP
PHP unset函数原理及使用方法解析
2020/08/14 PHP
jQuery之网页换肤实现代码
2011/04/30 Javascript
javascript分页代码(当前页码居中)
2012/09/20 Javascript
JS判断是否360安全浏览器极速内核的方法
2015/01/29 Javascript
jquery实现移动端点击图片查看大图特效
2020/09/11 Javascript
4种JavaScript实现简单tab选项卡切换的方法
2016/01/06 Javascript
第一章之初识Bootstrap
2016/04/25 Javascript
AngularJS入门教程之数据绑定用法示例
2016/11/01 Javascript
js实现简单的获取验证码按钮效果
2017/03/03 Javascript
React Native 通告消息竖向轮播组件的封装
2020/08/25 Javascript
10分钟上手vue-cli 3.0 入门介绍
2018/04/04 Javascript
JS实现前端路由功能示例【原生路由】
2020/05/29 Javascript
[00:27]DOTA2战队VP、Secret贺新春
2018/02/11 DOTA
Python实现删除当前目录下除当前脚本以外的文件和文件夹实例
2015/07/27 Python
CentOS 7下Python 2.7升级至Python3.6.1的实战教程
2017/07/06 Python
Python实现的生产者、消费者问题完整实例
2018/05/30 Python
python如何实现数据的线性拟合
2019/07/19 Python
TensorFlow 多元函数的极值实例
2020/02/10 Python
html5 Canvas画图教程(1)—画图的基本常识
2013/01/09 HTML / CSS
SmartBuyGlasses美国官网:太阳眼镜和眼镜
2017/08/20 全球购物
Parfumdreams芬兰:购买香水和化妆品
2021/02/13 全球购物
二年级班级文化建设方案
2014/05/10 职场文书
含预算的公司户外活动方案
2014/08/16 职场文书
党员学习中共十八大报告思想汇报
2014/09/15 职场文书
三方股东合作协议书范本
2014/09/28 职场文书
延安红色之旅心得体会
2014/10/07 职场文书
班主任寄语2016
2015/12/04 职场文书
申论不会写怎么办?教您掌握这6点思维和原则
2019/07/17 职场文书
Python实现生成bmp图像的方法
2021/06/13 Python
Pygame Rect区域位置的使用(图文)
2021/11/17 Python