js怎么区分这两个对象呢

图1
image.png

图2
image.png

场景:
image.png

如果上边判断进去了,说明editor渲染了,就是图1那个实例;
判断没进去,就是图2

我想知道我在子组件里根据两个实例怎么区分有没有渲染?不知道我说明白了没?

阅读 1.7k
2 个回答

图2 是 Vue?Vue 用 Object.defineProperty() 把属性替换成 setter/getter 了,便于收集变化,结果调用的还是图1 里的实际对象。

目测应该是个观察者模式的封装库,大概是用来检测对象变化时触发某些操作。

const observeA = {
    set x(number) {
        this._x = number;
        console.log('value changed');
    },
    get x() {
        return this._x;
    },
    _x: 1,
}

const a = {
    x: 1,
}

类似于这种封装效果,当对象发生变化时可监测,并进行某些特定操作,在你实际操作这两个对象的时候没有区别。

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