Skip to content
Patterns
Main Navigation
开始阅读
阅读译文
阅读原文
关于
资源
观点
GitHub
Discord
Twitter
Appearance
GitHub
Discord
Twitter
模式
实时了解最新的设计和性能模式。
设计模式
渲染模式
性能模式
设计模式
概述
设计模式概述
单例模式
在应用中共享同一个全局实例
代理模式
拦截和控制目标对象的交互
提供者模式
使数据可用于多个子组件
原型模式
在相同类型的对象之间共享属性
容器/展示模式
从应用逻辑中分离视图以强制分离关注点
观察者模式
当一个事件发生时使用可观察对象通知观察者
模块模式
将代码拆分得更小的并可重用
混入模式
在无继承的情况下向对象或类添加功能
中介者/中间件模式
使用中介者对象处理组件间通信
高阶组件模式
将可重用逻辑作为属性传递给应用中的组件
渲染属性模式
通过属性将 JSX 元素传递给组件
钩子模式
使用函数在应用中的多个组件之间重用有状态逻辑
享元模式
处理相同对象时重用现有实例
工厂模式
使用工厂函数创建对象
复合模式
创建协同工作的多个组件以完成单一任务
命令模式
向管理器发送命令来执行任务的解耦方法
JavaScript 设计模式
经典的《JavaScript 设计模式》更新了 ES2015+ 语法
渲染模式
概述
渲染模式概述
React.js 概述
用于构建可重用用户界面组件的 UI 库
Next.js 概述
用于混合 React 应用的 Vercel 公司框架
客户端渲染
在客户端渲染应用程序 UI
服务端渲染
响应用户请求在服务端生成 HTML
静态渲染
在构建站点时生成预渲染的 HTML
增量静态生成
构建站点后更新静态内容
渐进式注水
延迟加载页面中不太重要的 JavaScript
流式服务端渲染
响应用户请求在服务端生成 HTML
React 服务端组件
得益于 SSR 的服务端组件,渲染成无须打包的中间抽象
选择性注水
结合流式服务端渲染和注水的新方法
孤岛架构
鼓励在服务器渲染的页面中使用小的、集中的交互单元
性能模式
优化加载顺序
了解如何优化加载顺序以提高应用的可用速度
静态导入
导入其他模块导出的代码
动态导入
按需导入代码
可见时导入
当非关键组件在视口中可见时导入
可交互时导入
当 UI 界面需要时导入非关键组件
基于路由拆分
根据当前路由动态加载组件
打包拆分
拆分代码为小而可复用的部分
PRPL 模式
通过预缓存、延迟加载和最小化往返优化初始加载
Tree Shaking
通过剔除无用代码来减小包大小
预加载
发现关键资源之前通知浏览器
预获取
获取并缓存可能即将被请求的资源
优化加载第三方库
降低第三方库对站点性能的影响
虚拟列表
利用列表虚拟化优化其性能
压缩 JavaScript
减少通过网络传输所需的时间