Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

component与x6数据流向 #3

Open
lloydzhou opened this issue Sep 9, 2022 · 0 comments
Open

component与x6数据流向 #3

lloydzhou opened this issue Sep 9, 2022 · 0 comments

Comments

@lloydzhou
Copy link
Owner

当前的逻辑数据是单向流动的:

  1. 更改html元素。
  2. html元素挂载和渲染的时候操作graph更新x6内部的model
  3. x6内部model驱动渲染UI

期望能做双向绑定:

  1. 更改html元素(web component组件)的时候,x6的model跟着改动。同时x6的UI跟着更新
  2. x6内部model改动的时候,期望能同时更新html元素(web component)以达到所谓的双向绑定的逻辑

实现方案

  1. 重写cell组件内部的mount+unmount逻辑,如果当前节点已经存在了,就不生成新的对象。而是更新当前节点的属性。
  2. 从dnd拖动创建节点的时候,实时创建x6-node节点
  3. 手动连线的时候,也实时创建x6-edge节点。

讨论

  1. 这种所谓的双向绑定逻辑是否有必要?
  2. 如果x6内部model驱动更新了web component组件。对开发者来说,是不是并不合理?
  3. 通常开发者会持有一份自己的数据(model)直接更新开发者这边的component,可能不合理,这会导致开发者自己的数据和视图不一致
  4. 还是采用之前的逻辑:开发者自己监听x6的事件。自己更新component,通过操作component达到反过来控制x6视图的目的。
@lloydzhou lloydzhou changed the title 节点和边与x6 graph的模型数据对应 component与x6数据流向 Sep 9, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant