获取对象

在 TopoBuilder 中我们可以给需要操作的对象添加 id、name、自定义属性,然后通过 query() 方法来查询对象(即获取对象)。找到对象后,就可以通过拓扑组件提供的功能来控制该对象了。

获取对象的语法

通常,我们可以通过 query() 方法来获取对象。

graph.query(value)[index] // 查询单个对象
graph.query(value) // 查询带有某属性的Selector集合

获取场景中的对象

获取拓扑场景中的对象时,需要将 query() 方法添加到 load 事件的回调函数中。绑定 load 事件来通知拓扑场景加载完成,然后就可以通过 query() 方法来获取场景中的对象了。代码如下所示。

graph.on('load', function() {
  const objs = gaph.query(value)
})

这里,我们查询到的是一个 Selector 集合,即场景中满足查询条件的所有对象。

获取场景中的单个对象

需要获取拓扑场景中单个对象时,需要添加[index],指明查询的对象为单个。

graph.on('load', function() {
  const obj = gaph.query(value)[0]
})

参考信息

常用 query() 方法属性

我们可以通过下表中所列的属性来查询对象。

查询方式 代码示例
通过对象 id 查询 graph.query('#100')[0] // 查询 id 是100的单个对象
通过对象名称查询 graph.query('node1')[0] // 查询名称(name)是 node1 的单个对象
通过自定义属性查询 graph.query('[userData/类型=服务器]') // 查询对象自定义属性中类型是服务器的对象集合

下一个教程中,我们来学习控制对象

该文件修订时间: 2022-02-28 16:20:03

results matching ""

    No results matching ""