使用 canvas 实现贪吃蛇

基于Canvas坐标系统的贪吃蛇游戏实现:通过二维数组管理蛇身与食物,利用定时器驱动动画循环,实现碰撞检测与移动逻辑。

基于History实现前端路由

探讨如何利用 HTML5 History API 实现前端路由,通过 pushState 和 popstate 事件管理 URL 变化而不触发页面跳转,并提供了一个基于类的 Router 实现示例,涵盖路由注册、导航和事件监听。

优雅处理图片异常

探讨了在Web开发中统一处理图片加载失败的几种技术方案,包括使用img标签的error事件、window.addEventListener的捕获阶段监听、以及针对动态渲染内容的兼容性处理,并考虑了重试机制以避免无限循环。

global对象获取

文章探讨了在构建跨环境 JavaScript 工具库时,如何可靠地获取全局对象,覆盖了浏览器、Node.js、Web Worker、Node VM、CSP 限制和微信小程序等场景,并逐步优化到使用 globalThis 提案。

从form表单来看策略模式

文章以表单验证为切入点,对比了传统 if-else 实现与策略模式重构的代码。通过 TypeScript 示例,展示了如何将验证规则封装为可扩展的策略对象,从而提升代码的可维护性和可读性。

IntersectionObserver实现图片懒加载

IntersectionObserver 替代滚动事件监听实现图片懒加载,无需手动判断元素可见性,简化代码并提升性能。文章详解其 API 用法、选项配置及具体实现,并指出默认 img 标签样式处理等细节。

VuePress插件开发不完全指南

探讨VuePress插件开发的核心流程,以自定义代码复制插件为例,解析基于生命周期(如updated)的动态组件注入方法,并集成clipboard.js实现复制功能。

漫谈系统权限设计

文章从实践角度探讨后台系统的权限设计,梳理RBAC模型的核心概念(权限、角色、用户),并分享前端实现403、404、500错误页面的具体思路(基于Vue Router和Axios拦截器)。