上传图片之前压缩图片

提出图片上传时因体积过大导致超时的问题,解决方案是在上传前使用 ImgZip 压缩图片。结合 React 和 Ant Design (Antd) 实现图片压缩与上传功能,通过设置压缩质量和宽度优化图片体积,确保上传过程顺畅。提供代码示例展示具体实现。

npm i 和 npm ci 区别

对比了 npm i 和 npm ci 的差异。npm i 安装或更新依赖,适用于开发环境;npm ci 删除 node_modules 后按 package-lock.json 精准安装,适合 CI/CD 场景。npm ci 确保版本一致,安装速度更快,但强依赖 package-lock.json 文件。

短链接生成原理

介绍了短链接的生成与访问流程。通过将长链接转换为 MD5 HASH 值,检查数据库是否存在对应记录,若无则存入数据库并返回自增 ID。ID 转换为 26 进制字符串作为短链接的 Key。访问短链接时,服务器解析 Key,重定向至长链接。提供了 Node.js 代码示例,展示了 SQL 结构及 10 进制到 26 进制的转换方法。

The "new Function" syntax[转]

介绍了通过 `new Function` 创建函数的语法与特点,其允许动态生成函数代码,但其 `[[Environment]]` 引用的是全局作用域,无法访问外部变量。这种方法适用于从服务器获取代码或动态编译函数的场景,避免了与 minifier 冲突的问题,并建议通过参数显式传递变量以提高代码的安全性和可维护性。

使用 webpack-merge 合并 Webpack 配置

介绍了使用 webpack-merge 工具优化 Webpack 配置管理,通过合并开发、测试、预发布和生产环境中重复的配置(如入口和加载器),提高了配置的复用性和维护性。示例展示了基础配置和生产环境配置的合并方式,简化了复杂环境下的配置管理流程。