千分位 有些时候,我们需要将数字转为千分位分割展示: '123456789.1234'.replace(/^(\d+)((\.\d+)?)$/, (s, s1, s2) => s1.replace(/(\d{1,3})(?=(\d{3})+$)/g, '$&,') + s2) // '123,456,789.1234' 有特殊需求时,还可以把 3 改为动态数字,通过 new RegExp() 的方式,动态生成正则即可。 切掉小数末尾的0 有些…
千分位 有些时候,我们需要将数字转为千分位分割展示: '123456789.1234'.replace(/^(\d+)((\.\d+)?)$/, (s, s1, s2) => s1.replace(/(\d{1,3})(?=(\d{3})+$)/g, '$&,') + s2) // '123,456,789.1234' 有特殊需求时,还可以把 3 改为动态数字,通过 new RegExp() 的方式,动态生成正则即可。 切掉小数末尾的0 有些…
在 Vue 中,onMounted 钩子函数会在组件被挂载到 DOM 后立即调用。然而,如果在父组件的 onMounted 钩子函数中尝试获取子组件的 DOM 元素,可能会遇到问题,因为子组件可能还没有完成挂载。 如果需要在父组件的 onMounted 钩子函数中获取子组件的 DOM 元素,你可以使用 nextTick() 方法。nextTick() 方法会在下一次 DOM 更新循环结束之后延迟执行回调。在修改数据之后立即使用这个方法,获取更新后的 DOM。 以下是一个示例: import { nextTick }…
我一直也没在意,突然发现 vscode 已经好久不自动更新了,就去手动下了一个,然后就发现弹出这个提示。 一脸懵,点了了解详细信息,看了半天,大概意思就是区分了 User版 和 系统版。至于为什么这么做,是要给不同用户提供更加流畅的体验,确保不同用户可以得到流线型的设置。嗯,大概是这个意思,有兴趣可以去看 文档。 几种方法: 打开 vscode 不使用管理员模式 安装系统版本 手动更新 大概是这样~
在用 Edge 下载内容时,总是会等一会儿才会开始下载,这期间也没有什么提示,以至于我们总是以为没有开始下载,不自觉就会重新点一次,这样就导致重复下载。 其实当我们点了下载之后,Edge 是在检查要下载的内容是否安全,这也是为啥有的下载内容会出现安全提示。 如果我们可以100%可控下载内容的安全性,那么完全可以关闭这个检查。 在 设置 -> 隐私、搜索和服务 -> 安全性,这里面会有一个 Microsoft Defender Smartscreen 选项,关掉它,就不会再检查啦。 另外,我们还可以开启多…
收起的内容: 收起后: 如果用 vscode 开发前端,那么有很多配置文件,左侧的目录树会很乱。有个小技巧,使用文件嵌套规则,让这些配置文件隐藏起来。 在 设置 中搜索 File Nesting,可以根据自己的配置习惯来进行自定义设置。 这里面不能使用正则匹配,只有一个 * 通配符,而且每个项只能有一个,所以可能会配置比较多的内容,但一劳永逸。 这是我目前用到的配置项,我习惯将所有配置文件放在 tsconfig.json 下: 项: *config.json 值: ${basename}.*.json, ${bas…
问题出现 在使用 el-table 中,在使用 fixed 字段固定列后,当我们自定义表格的滚动条的宽高后,会出现底部高度不对齐,右侧列宽不对齐等情况。 上图可以看到,当我们滚动到底部后,会出现明显的错位现象。此时,第一时间就去 F12 查看元素,企图重载样式。但是始终无所收获。 解决方案 其实,只要在重载对应的 .el-scrollbar__wrap::-webkit-scrollbar 样式即可: .el-table__body-wrapper::-webkit-scrollbar { height: 10px…
最近找水印工具,发现全部都不支持自动宽度,我就希望找一款可以自动计算文本宽度并展开的水印工具,然后发现没有。于是手写一个,反正也不是很复杂。 然后就越写越多,目前我用着还算比较完善,直接开源,欢迎大家提意见和 PR。 简单介绍一下 任意位置:可以挂载到任意 DOM 节点上,以便在任意位置显示水印 动态计算宽度和高度:水印可以根据内容长度和容器宽度进行自适应调整,确保水印始终显示完整。 自动换行:当水印内容超过容器宽度时,水印会自动进行换行,以便适应容器的大小。 动态监听:X-Watermark 会监听 DOM 变化…
问题 最近工作写了个 H5 应用,本地、测试和正式环境都没啥问题,直接发版~ 嗯,然后就出问题了。有位大佬,用着18年的手机点开了应用。首页内容很长,好家伙,内容全部揉在了一块。真真是首屏展示全部。。。 期初我以为是懒加载的问题,可能机型比较老,不支持 IntersectionObserver,直接换成滚动懒加载,还是不行,我凌乱了。。。 排查 由于手机是人家大佬自己的,不可能给我测试用,我们这边也没有能复现的机型,给我整不会了。 既然是老机型,那一定是版本问题呗。打包降级,从 js 到 css,各种打包降级,还是…
随着电子书越来越多,普通文件夹再也难以承受,(尤其是最近网盘收藏了亿些些),所以搞个图书管理系统,就摆上了日程。 因为没用过盖面神器,所以没有具体了解过这个领域。仅仅是知道一点点,但仅限于本地电脑上的 Calibre,知道这玩意好像可以推送到 kandle,具体不了解。 我的需求: 电脑能看 手机能看 它们能同步看,也就是电脑上看了一半,手机上可以继续,而不用手动记录阅读点 能统一管理书籍 需求很简单,所以网上查了查,还是基于 Calibre,这玩意有 calibre-web,而且还是 docker 的方式,正好我…
问题 今天发现一个比较有意思的问题。我定义了一个 class,里面有一个 type 属性需要和 code 保持一致,所以很自然我就写了如下内容: class Node { code = ''; get type() { return this.code; } } 这个代码本身没什么问题,也可以正常取值: const node = new Node(); node.type; // 可以读取到对应的值 但是呢,问题来了,我使用这个对象往后端传递的时候, type 丢了~ 看了一下对象结构,估计是和…
(っ•̀ω•́)っ✎⁾⁾ 开心每一天
COPYRIGHT © 2021 jeremyjone.com. ALL RIGHTS RESERVED.