欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

关于mvvm原理实现,模拟vue(3)-----发布订阅

程序员文章站 2022-06-15 15:35:43
为了实现 “ 数据修改导致视图发生 “ 我们选择使用发布订阅模式 以下是简单的发布订阅模式的实现 ------------------------------------------------- function Dep() { this.watchers=[]; } Dep.prototype.... ......
为了实现  “ 数据修改导致视图发生 “ 我们选择使用发布订阅模式

以下是简单的发布订阅模式的实现 ------------------------------------------------- function Dep() { this.watchers=[]; } Dep.prototype.add=function (watcher) { this.watchers.push(watcher); }; Dep.prototype.subscrib = function () { this.watchers.forEach(watcher=>watcher.update()); }; function Watcher(fn) { fn(); } Watcher.prototype.update=function () { this.fn(); };