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 相关文章推荐
JavaScript中数组对象的那些自带方法介绍
Mar 12 Javascript
jquery上传插件fineuploader上传文件使用方法(jquery图片上传插件)
Dec 05 Javascript
60行js代码实现俄罗斯方块
Mar 31 Javascript
javascript合并表格单元格实例代码
Jan 03 Javascript
RequireJS使用注意细节
May 15 Javascript
JavaScript String(字符串)对象的简单实例(推荐)
Aug 31 Javascript
jQuery实现点击后高亮背景固定显示的菜单效果【附demo源码下载】
Sep 21 Javascript
浅析vue数据绑定
Jan 17 Javascript
Bootstrap3 模态框使用实例
Feb 22 Javascript
JavaScript封装的常用工具类库bee.js用法详解【经典类库】
Sep 03 Javascript
详解在Vue.js编写更好的v-for循环的6种技巧
Apr 14 Javascript
Vue + Node.js + MongoDB图片上传组件实现图片预览和删除功能详解
Apr 29 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
php adodb操作mysql数据库
2009/03/19 PHP
php设计模式 Interpreter(解释器模式)
2011/06/26 PHP
PHP pathinfo()获得文件的路径、名称等信息说明
2011/09/13 PHP
用来解析.htpasswd文件的PHP类
2012/09/05 PHP
php邮箱地址正则表达式验证
2015/11/13 PHP
php实现的http请求封装示例
2016/11/08 PHP
Windows平台实现PHP连接SQL Server2008的方法
2017/07/26 PHP
JQuery 动画卷页 返回顶部 动画特效(兼容Chrome)
2010/02/15 Javascript
Jquery为a标签的href赋值实现代码
2013/05/03 Javascript
JS实现鼠标滑过链接改变网页背景颜色的方法
2015/10/20 Javascript
浅谈jquery点击label触发2次的问题
2016/06/12 Javascript
JS中闭包的经典用法小结(2则示例)
2016/12/28 Javascript
浅谈struts1 &amp; jquery form 文件异步上传
2017/05/25 jQuery
node.js利用socket.io实现多人在线匹配联机五子棋
2018/05/31 Javascript
Vue组件化开发之通用型弹出框的实现
2020/02/28 Javascript
python判断windows隐藏文件的方法
2014/03/21 Python
详解Django框架中的视图级缓存
2015/07/23 Python
web.py 十分钟创建简易博客实现代码
2016/04/22 Python
python与C互相调用的方法详解
2017/07/14 Python
Selenium 模拟浏览器动态加载页面的实现方法
2018/05/16 Python
PyCharm设置SSH远程调试的方法
2018/07/17 Python
关于Python 常用获取元素 Driver 总结
2019/11/24 Python
python多进程下的生产者和消费者模型
2020/05/07 Python
浅谈Pycharm的项目文件名是红色的原因及解决方式
2020/06/01 Python
瑞贝卡·明可弗包包官网:Rebecca Minkoff
2016/07/21 全球购物
牵手50新加坡:专为黄金岁月的单身人士而设的交友网站
2020/08/16 全球购物
校长先进事迹材料
2014/02/01 职场文书
进步之星获奖感言
2014/02/22 职场文书
环保建议书500字
2014/05/14 职场文书
党的群众路线教育实践活动组织生活会发言材料
2014/10/17 职场文书
2015年打非治违工作总结
2015/04/02 职场文书
生死抉择观后感
2015/06/09 职场文书
校园新闻稿范文
2015/07/18 职场文书
2015年小学教科研工作总结
2015/07/20 职场文书
田径运动会广播稿
2015/08/19 职场文书
运动会广播稿100字
2015/08/19 职场文书