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

为了实现  “ 数据修改导致视图发生 “ 我们选择使用发布订阅模式

以下是简单的发布订阅模式的实现
------------------------------------------------- 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(); };
原文地址:https://www.cnblogs.com/yoyosir/p/8204355.html