viewContext的疑问
Closed this issue · 3 comments
hunter2009 commented
感觉esui里面的viewContext有点乱,有几点疑问:
- setProperties的时候为什么要支持对viewContext的更改,我理解viewContext应该不会轻易发生变更;
- 在initOptions的时候处理了一下,initViewContext的时候又处理了一下....是不是在实例化的时候只做一次处理比较好?
- 绑定,解绑,设置是不是放在viewContext里面做更好一点?
otakustay commented
- 说得没错,viewContext应该是一个初始化时设置且后续不能更改的属性,不过既然现状已经是这样了,为了保持兼容性不可能修改
- 事实上
initOptions
没有处理viewContext,是在setProperties
里处理的,而setProperties
不仅仅初始化时,运行期也会不断被调用,所以这个问题和1是一样的 - 暂时没理解具体指的是什么
hunter2009 commented
对于1,2:能否把这个流程放入组件的构造函数中初始化,然后在dispose的时候进行销毁,这样修改的话对当前流程会有影响吗?兼容性呢?
对于3:对于ViewContext的操作,是不是写一个类似ViewContextGroup或者ViewContextManager的管理器来管理viewContext集合,比如说组件切换视图视图时,通过这个Manager来管理;这样也可以支持实例级别的复用?(虽然几乎不存在这样场景...但是对复用性有追求,用不到,但是我们可以有...)
otakustay commented
能否把这个流程放入组件的构造函数中初始化,然后在dispose的时候进行销毁,这样修改的话对当前流程会有影响吗?兼容性呢?
因为现在我们允许在组件初始化以后再改变viewContext(不可改变这个逻辑),所以肯定要在setProperties
中支持修改,那么把这个流程放进初始化中去就是浪费
是不是写一个类似ViewContextGroup或者ViewContextManager的管理器来管理viewContext集合,比如说组件切换视图视图时,通过这个Manager来管理
现在的ViewContext
本身就是这个Manager,提供了get
等方法获取不同的ViewContext实例