mvvm框架的实现?

最近看了一些mvvm的核心代码实现,其中有一段代码想不明白,代码如下:

Object.defineProperty(object, key, {
        configurable: true,
        enumerable: true,
        get: function () {
            if (Dep.target) {
                dep.addSub(Dep.target)
                Dep.target.addDep(dep)
            }
            return value
        },
        set: function (newValue) {
            if (newValue != value) {
                value = newValue
                dep.notify()
            }
        }
    })

Dep.target 我理解的是一个全局的属性,是全局唯一的值,怎么来用他来实现标记是否已经被订阅了呢?这个地方百思不得其解。
希望高手能详细解释一下。谢谢

阅读 817
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题