元素状态

阅读时间约 2 分钟

graph.setItemState(item, state, value)

设置元素状态。支持单个状态多值的情况,详情参考 F6 状态管理最佳实践

该方法在执行过程中会触发 beforitemstatechangeafteritemstatechange 事件。

参数

名称类型是否必选描述
itemstring / Itemtrue元素 ID 或元素实例
statestringtrue状态值,支持自定义,如 selected、hover、actived 等。
valueBoolean / stringtrue是否启用状态

用法

// 布尔状态 'selected'
graph.setItemState('node1', 'selected', true);

// 多值状态 'body'
graph.setItemState('node1', 'body', 'health');
graph.setItemState('node2', 'body', 'ill');

graph.clearItemStates(item, states)

清除元素状态,可以一次性清除多个状态。

参数

名称类型是否必选描述
itemstring / Objecttrue元素 ID 或元素实例
statesstring / Array / nullfalse取值可以是单个状态值,也可以是状态值数组

用法

// 清除单个状态
graph.clearItemStates(node, 'a');

// 清除多个状态
graph.clearItemStates(node, ['a', 'b']);

// 清除所有
graph.clearItemStates(node);

graph.priorityState(item, state)

将指定状态的优先级提升为最高优先级。

参数

名称类型是否必选描述
itemstring / Objecttrue元素 ID 或元素实例
statesstringtrue状态名称

用法

// 将 node 的 a 状态调整为优先级最高
graph.priorityState(node, 'a');