Open
Conversation
iammapping
reviewed
Aug 27, 2019
Owner
iammapping
left a comment
There was a problem hiding this comment.
职责划分得很明确,命名这些也很达意。看下来有两点是不是可以优化:1. Watcher 也可以通过 defineProperty get 的方式延迟初始化;2. 当依赖发生变更后,deps 可以只标记为脏的,等真正使用时再计算,这个也可以放到上一条的 get 里做
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
将对象中的属性和方法分开: 1、在Observable类中将对象的属性变得可观察,即使用defineProperty设置属性的get和set方法,返回一个新的对象。2、Watcher类会调用原对象的方法为新对象创建一个与方法同名的属性,同时会为方法访问到的属性的setter()上加上对应的回调函数。当属性改变时,会调用绑定的回调函数,修改依赖该属性的其他属性值。