mtdv logo

状态

阅读时间约 2 分钟

属性和方法

graph.nodeStateMap

Record<string, Set<string>>

节点状态 Map,key为状态类型,value为节点Id集合

graph.setNodeState(data, type[, isAppend])

Function

设置节点状态

参数

  • data : object

    节点绑定的数据

  • type : string

    状态类型

  • isAppend : boolean optional

    当值为boolean时,为添加/移除状态

    当值为undefined时,将根据此时节点的状态 Map,即nodeStateMap,自动判断添加/移除状态。例如此时节点状态为activeisAppend === undefined将移除active

当修改状态时,将经过以下步骤:

  1. 根据传入参数,修改nodeStateMap
  2. 根据修改后的nodeStateMap及当前注册的样式组,应用样式;
  3. 执行当前类型注册的相关副作用

graph.linkStateMap

Record<string, Set<string>>

边状态 Map,同nodeStateMap

graph.setLinkState(data, type[, isAppend])

Function

设置边状态,同setNodeState

graph.registerState(type[,options])

Function

注册状态

参数

  • type : string

    状态类型

  • options : object optional

    可选的配置项,包括三个属性:

    • priority,状态优先级,默认为{value: 5}
    • node optional,节点状态相关的配置,包括两个属性:
      • style optional,设置状态后,应用的样式
      • effect optional,设置状态后,触发的相关副作用
    • link 同 node

graph.unregisterState(type)

注销状态

内置状态

状态触发时机副作用
activemouseenter/mouseleave节点:高亮相邻边及节点;边:高亮连接的节点
selectedclick
inactive
disable
brush框选