【十月打卡】第71天 前端常用的7种设计模式(7)
2022/10/28 4:24:58
本文主要是介绍【十月打卡】第71天 前端常用的7种设计模式(7),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
观察者模式
概念
一个主体有多个观察者,当主体的状态发生改变时,通知观察者。
代码示例和UML类图
代码示例:
class Subject { private state = 0; private observers: Observer[] = []; getState() { return this.state; } setState(newState: number) { this.state = newState; this.notify(newState); } attach(observer: Observer) { this.observers.push(observer); } private notify(state: number) { this.observers.forEach((observer) => { observer.update(state); }); } } class Observer { constructor(private name: string) {} update(state: number) { console.log(`${this.name}先生:${state}号客人的餐已经好了`); } } const observer1 = new Observer('小明'); const observer2 = new Observer('小张'); const subject = new Subject(); subject.attach(observer1); subject.attach(observer2); subject.setState(2);
UML类图:
应用场景
- DOM事件
- Vue、React的生命周期
- Vue的watch、watchEffect
- 异步回调
- MutationObserver
这篇关于【十月打卡】第71天 前端常用的7种设计模式(7)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-15AntDesign项目实战:新手入门与初级应用教程
- 2024-11-15AntDesign-Form-rules项目实战:新手指南
- 2024-11-14ESLint课程:初学者指南
- 2024-11-14Form.List 动态表单课程:新手入门教程
- 2024-11-14Redux课程:新手入门完全指南
- 2024-11-13MobX 使用入门教程:轻松掌握前端状态管理
- 2024-11-12前端编程资料:新手入门指南与初级教程
- 2024-11-12前端开发资料入门指南
- 2024-11-12前端培训资料:适合新手与初级用户的简单教程
- 2024-11-12前端入门资料:新手必读指南