自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(55)
  • 收藏
  • 关注

原创 table布局合并列宽度设置无效问题(CSS之三)

CSS之三(table布局合并列宽度设置无效问题)

2020-06-11 09:57:27 3384

原创 为什么 parseInt 转换大数字会丢精度?我用 BigInt 重写了一个进制转换器

做进制转换工具时,发现一个经典陷阱:超过(2^53)的数字,parseInt和Number都会丢精度。本文聊聊为什么会丢、怎么用 BigInt 手写一个不丢精度的进制转换器。

2026-10-13 09:26:28 132

原创 写了个 Cron 解析器,最大的坑是「日期和星期是 OR 不是 AND」

写了个 Cron 解析器,发现最大坑是「日期与星期为 OR 而非 AND」:当两者均非 * 时,满足其一即触发。解析需将字段展开为集合,匹配逻辑分情况处理。采用逐分钟扫描法计算下一次触发,安全且易实现。结合预设、字段标签和客户端时间注入(useEffect),确保体验流畅。工具已上线:tools.memory.gd.cn/datetime/cron。

2026-09-15 13:34:43 338

原创 扫码连 WiFi、存名片:一个二维码生成器里藏的 5 个细节

这篇文章分享了在开发二维码生成工具时遇到的5个关键细节:1) WiFi连接需严格遵循协议格式,包括大小写敏感和特殊字符转义;2) 电话、短信和名片功能需使用特定URI协议;3) 纠错级别选择影响二维码容错能力,带logo需使用最高H级;4) 颜色设置需包含alpha通道并检查对比度;5) 用户体验优化包括防抖处理和内容预览。文章通过实际案例说明如何让二维码实现智能动作而非仅显示文本,为开发者提供了实用指南。

2026-08-19 16:59:50 191

原创 10 个我每天都在用的在线开发工具,全免费、无需登录、数据不离开浏览器

这篇文章介绍了一个专为开发者设计的干净、高效的在线工具网站 tools.memory.gd.cn,包含18个常用开发工具。重点推荐了10个核心工具:JSON格式化、Base64编解码、时间戳转换、正则测试、JWT解析、图片压缩、图片转Base64、UUID生成、Cron表达式解析和颜色转换。所有工具都免费、无需登录、数据处理在浏览器本地完成,确保隐私安全。网站还支持全局搜索、深色模式、移动端适配和URL分享功能。相比VS Code插件,该工具站具有跨设备可用、即时共享和SEO友好的优势。

2026-08-10 09:12:16 174

原创 纯前端图片压缩怎么做?不用上传服务器,浏览器里跑完所有逻辑

摘要:纯前端图片压缩实现方案 本文介绍了纯前端实现图片压缩的技术方案,使用browser-image-compression库在浏览器端完成图片处理,无需上传服务器。关键点包括: 优势:保障隐私安全、零服务器成本、即时反馈 核心实现: 使用Web Worker避免阻塞主线程 缓存原始File对象优化性能 引入requestId解决异步竞态问题 用户体验优化: 采用叠加遮罩替代图片替换,避免页面闪烁 左右并排对比+灯箱放大功能 对PNG格式变大的特殊处理提示 推荐方案

2026-08-04 09:49:41 217

原创 我做了一个开发者工具箱,从 0 到 18 个工具的完整复盘

本文记录了我使用Next.js开发一个纯前端在线工具站的完整过程。从技术选型(选择Next.js静态导出模式)、架构设计(动态路由+工具注册表)到18个高频开发工具的选择(基于流量调研),详细复盘了项目实现。重点分享了遇到的6个技术坑点及解决方案,包括静态导出配置、样式重置、异步状态管理等。还介绍了URL参数同步、上下文推荐、SEO优化等细节设计。项目最终部署在腾讯云服务器,实现了无广告、免登录、数据不离浏览器的目标,为开发者提供干净高效的工具集合。

2026-08-03 09:32:27 192

原创 为什么你的 PR 总是多出一堆奇怪的 commit?90% 的人都踩过这个 Git 坑

文章摘要: 本文对比了 Git 中同步主干代码的两种方式 - merge 和 rebase。当功能分支开发周期较长时,merge 会生成额外的 MergeCommit,导致 PR 提交历史冗余;而 rebase 则能保持线性历史,仅保留自己的有效提交。文章详细介绍了两种方式的操作步骤、冲突处理方法及适用场景:merge 适合公共分支合并,rebase 更推荐个人功能分支使用。关键提醒包括 rebase 后必须 force push(建议用 --force-with-lease)、设置 pull.rebase

2026-04-20 17:00:46 478

原创 告别混淆!Git 多账号按域名/目录自动切换身份的终极指南

这篇教程介绍了Git多账号按域名或目录自动切换身份的两种方法。核心是利用Git的includeIf条件配置功能:1)按仓库URL匹配(推荐),适合项目分散的情况,需要Git 2.36+版本;2)按目录路径匹配,适合有固定目录结构的用户。两种方式都需要创建独立的配置文件并设置匹配规则,文中提供了详细配置步骤和验证方法。最后对比了两种方式的优缺点,并给出常用命令备忘,帮助开发者彻底解决身份混淆问题。

2026-03-16 15:27:04 138

原创 10分钟搞定!Mac 配置 GitHub SSH 完全指南(小白也能看懂)

本文是一份详细的Mac配置GitHub SSH密钥指南,帮助用户通过SSH方式安全连接GitHub仓库。文章首先解释了SSH相比HTTPS的优势:更安全、更方便且更快速。配置过程分为四个步骤:检查现有SSH密钥、生成新密钥、将密钥添加到ssh-agent管理工具,最后将公钥上传至GitHub账户。指南特别强调了密钥安全注意事项,包括推荐设置密钥密码和使用macOS钥匙串功能。通过完成这些步骤,用户可实现无需每次输入密码的Git操作,同时享受加密连接的安全保障。

2026-03-13 11:28:42 1719 3

原创 mac终端封神!iTerm2 完整安装+插件配置教程(新手零踩坑)

zsh-autosuggestions 是 iTerm2 搭配 Zsh/Oh My Zsh 最实用的插件之一,核心功能是基于你的历史命令,实时给出智能补全提示,输入命令时会显示灰色候选提示,按右方向键即可快速补全,大幅减少重复输入,避免命令输错,新手也能轻松上手,以下是完整操作步骤(全程在 iTerm2 中执行)。以下推荐均适配iTerm2,安装简单、实用性强,覆盖终端美化、命令效率、功能拓展,新手可优先安装基础款,开发者可按需补充进阶工具,所有安装命令均可在iTerm2中直接执行。

2026-03-02 23:18:03 4679

原创 用对 Browserslist,为你的 Vite/Webpack 项目构建速度翻倍

Browserslist 是一个用于统一前端工具中浏览器兼容性配置的工具,通过单一配置文件指定项目需要支持的浏览器范围。核心功能包括:1)为 Autoprefixer、Babel 等工具提供统一的浏览器目标;2)自动处理 JavaScript 转译和 CSS 前缀;3)优化构建产物大小。配置方式支持 package.json 或独立文件,提供多种预设方案(现代浏览器、企业应用、旧浏览器兼容等)。需配合 Autoprefixer、Babel、PostCSS 等工具使用,实现自动化兼容性处理,避免重复配置。典型

2026-02-08 10:47:18 1028

原创 React 学习之旅一

React 学习之旅一React 官网版本要求Node >= 8.10 和 npm >= 5.6 node -v npm -v创建 React 项目创建 npx create-react-app my-appHook它可以让你在不编写 Class 的情况下使用 state 以及 React 其他的特性。版本要求React版本大于等于 v16.8.0 / React Native从v0.59开始支持安装校验插件 eslint-plugi

2020-10-31 12:23:12 357

原创 Visual Studio Code 快捷键汇总

Visual Studio Code 快捷键汇总// 将键绑定放在此文件中以覆盖默认值[ { "key": "ctrl+y", "command": "editor.action.deleteLines", "when": "textInputFocus && !editorReadonly" }, { "key": "-", "command": "redo" },]...

2020-09-11 14:59:16 440

原创 重装系统后的一些环境配置

重装系统后的一些环境配置nvm 与 nodejs 配置打开环境变量配置页面

2020-09-11 11:25:19 470

原创 向日葵的windows账号名

向日葵的windows账号名

2020-09-04 12:50:22 24188

原创 CSS属性vertical-align详解(CSS之五)

CSS属性vertical-align详解(CSS之五)作用对象vertical-align的意思是在垂直方向进行对齐。它主要对以下属性的元素有效 inline元素、inline-block元素和普通的文本。行盒:line-box定义:(盒的排布方式,不是行盒)在一个内联格式化上下文中,盒是一个接一个水平放置的,从包含块的顶部开始。这些盒之间的水平margin,border和padding都有效。(盒的对齐方式,不是行盒)盒可能以不同的方式竖直对齐:以它们的底部或者顶部对齐,或者以它们里面的文

2020-08-23 15:45:24 3465

原创 CSS中line-height属性详解(CSS之四)

CSS中line-height属性详解基本概念line-height,又称行高,指的是两行文字基线之间的距离,又可以称为这行文字所占的高度。图中两行基线之间的距离就是行高,基线相关可以查看CSS中的baseline基线详解。上一行的底线和下一行的底线之间的距离就是行距。行距 = line-height - font-size取值值描述normal默认。设置合理的行间距number设置数字,此数字会与当前的字体尺寸相乘来设置行间距。length设置固定的行间

2020-08-22 22:40:40 13843

原创 创建新仓库(Git命令之五)

创建新仓库(Git命令之五)在github网站上点击new, 进入项目配置页面。填写项目名:Repository name。填写项目描述:Description。选择私有还是公开:Public 和 Private。点击Create repository 完成创建复制这个链接git clone https://github.com/wenbintian/test.git 此时会生成一个包含.git文件夹的项目D:\test>git clone https://github.co

2020-08-16 00:20:08 272

原创 你不知道的JavaScript(上卷)(读书笔记之一)

学习笔记之一(你不知道的JavaScript(上卷))第二部分 this 和对象原型任何足够先进的技术都与魔法无异。—Arthur.C Clarkethis到底是什么如何判断this可以从以下方面进行判断被忽略的this更安全的this赋值表达式 p.foo = o.foo的返回值是目标函数的引用...

2020-08-08 17:20:12 355

原创 address-parse.js 地址智能解析插件(前端插件推荐之一)

前端插件推荐之一(address-parse.js)对国内地址地区进行智能解析,提取关键数据https://github.com/wenbintian/address-parseforked from akebe/address-parse

2020-07-10 09:39:43 3595 1

原创 v-if 生命周期只执行一次(VUE之一)

VUE之一(v-if生命周期只执行一次)

2020-06-28 10:25:34 3375 2

原创 前端工程师必装的软件汇总

前端工程师必装的软件汇总Git 项目版本管理 https://git-scm.com/download/

2020-06-18 16:28:33 1141

原创 获取滚动条宽度(Element-UI之三)

标题Element-UI之三(获取滚动条宽度)代码如下/** * 计算浏览器滚动条宽度 * @returns {Number} */export default function () { const outer = document.createElement('div'); outer.style.visibility = 'hidden'; outer.style.width = '100px'; outer.style.position = 'absolute'; o

2020-06-18 11:05:50 990

原创 commit 相关操作(Git命令之四)

Git命令之四( commit 相关操作)

2020-05-29 17:43:44 404

原创 分支相关操作(Git命令之三)

Git命令之三( 分支相关操作)git branch -a 显示所有的分支(若没看到所有的分支,则先执行git fetch一下)git branch 显示当前的分支git checkout 分支名称

2020-05-29 17:41:06 177

原创 查看webpack的默认配置(Vue-cli3之一)

Vue-cli3之一(查看webpack的默认配置)在项目当前位置输入以下命令:vue inspect > output.js比如在以下项目里则会产生 output.js文件,里面就是webpack的默认配置

2020-05-28 22:55:17 1614 1

原创 配置查询以及用户名修改(Git命令之二)

Git命令之二( 配置查询以及用户名修改)打开命令窗(多种方式)a.自带的命令窗 window+R ⇒ cmd (电脑自带的 cmd.exe程序)b. git 命令窗输入 git config --list 查看当前git 配置可修改用户名 git config --global user.name '用户名'...

2020-05-28 14:21:06 368

原创 Input标签的line-height属性失效的解决方法(CSS之二)

input组件的line-height属性失效的解决方法如下设置,文本会出现字体离上下边框不对齐的情况(有1像素的偏差) background: #FF0000; height: 40px; line-height: 40px;解决办法,利用设置padding上内边距比下内边距多像素的方法解决 background: #FF0000; height: 40px; box-sizing: border-box; padding: 2px 0 1px;

2020-05-25 20:23:14 1717

原创 滚动条样式(Element-UI之二)

Element-UI组件之滚动条样式效果2.样式覆盖// 滚动条宽度.el-scrollbar__bar.is-vertical { width: 12px;}.el-scrollbar__bar.is-horizontal { height: 12px;}// 滚动条圆角.el-scrollbar__bar { border-radius: 6px;}// 滚动条hover后的背景色.el-scrollbar__thumb:hover { background

2020-05-11 15:54:10 818

原创 远程桌面连接设置详细步骤

远程桌面连接设置过程电脑A代表要被远程的电脑电脑B代表桌面远程的电脑电脑A桌面需要做一下设置查找当前电脑的ipwindow + R输入cmd输入ipconfig设置允许被远程连接查找当前登录用户名此电脑 右键 -->属性控制面板-用户账户图中就是用户名电脑B桌面即可远程操作打开远程桌面连接软件(C:\ProgramData\Mi...

2020-04-25 20:11:50 12197 1

原创 前端Vue开发插件汇总(Visual Studio Code之一)

Markdown All in One一款编辑md文件十分好用的扩展插件

2020-04-14 11:11:04 700

原创 代码风格校验 Vetur+Prettier(visual studio code之二)

setting.json文件{ "window.zoomLevel": -1, "explorer.confirmDelete": false, "vetur.validation.template": false, "gitlens.advanced.messages": { "suppressGitVersionWarning": true ...

2020-03-31 11:59:49 587

原创 ESlint配置

.eslintrc.js 文件module.exports = { root: true, parser: 'babel-eslint', parserOptions: { sourceType: 'module' }, env: { browser: true, }, // https://github.com/feross/standard/blo...

2020-03-24 11:06:30 278

原创 flex内容撑大容器(flex布局之一)

flex布局相关问题子项已经设置flex-shrink flex-grow,但是内容过大时还会撑大容器,如下图:<div class="zoehis_complex_item"> <div title="所在科室代码" class="zoehi_complex_item_label">所在科室代码:</div> <div class="zo...

2020-03-20 10:15:39 1029

转载 node-sass安装总报错

node-sass安装总报错node-sass是我们开发中很常见的依赖包,也是安装时间冗长和最常见到报错的依赖。 安装node-sass失败原因有很多种,我们在说失败原因之前,先来分析一下node-sass的安装过程(以下node版本为v10.15.3):PS D:\demo> npm i node-sass// 从npm源安装到node_modules> node-sass...

2020-01-03 22:01:26 2293

原创 CSS垂直居中(Element-UI之一)

垂直居中html:<div class="box"> <div class="child">垂直居中</div></div>css://父元素伪类.box::after{ content:""; width: 0; height: 100%; display: inline-block; v...

2019-12-26 16:26:23 2357

原创 css垂直居中

1.父元素伪类html:<div class="box"> <div class="child">垂直居中</div></div>css:.box::after{ content:""; width: 0; height: 100%; display: inline-block; vertical...

2019-12-26 15:34:59 169

原创 stash 相关操作(Git命令之一)

git stash 相关操作操作列表PS D:\project\git\zoehis-web-client> git stash helpusage: git stash list [<options>] or: git stash show [<stash>] or: git stash drop [-q|--quiet] [<stash...

2019-11-20 11:37:52 688

原创 nvm use 无法切换npm的解决办法

nvm正常的安装目录结构没有正常切换时对应的文件结构3.解决方法nvm use 无效,即 nvm use 后执行nvm ls,当前使用的版本前正常是会有 * 标注,可是nvm use 所有版本前都没有*。我当前使用的版本是 6.10.0,我现在nvm install 或nvm uninstall 6.10.0版本后,nodejs默认安装目录根本没有安装相对应的node版本,此时再 nv...

2019-10-25 17:35:40 8979

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除