Skip to content
导览

Class: ExpertSearchManager

高级检索管理类

Details

高级检索

Examples

ts
const expertSearchManager = await cloud.getExpertSearchManager();   // 在CreateApp时调用
const expertSearchManager = await cloud.getExpertSearchManager();   // 在CreateApp时调用

Hierarchy

  • Callable

    ExpertSearchManager

Methods

setSearchFinished

setSearchFinished(fn): void

Details

设置检索完成的回调函数

Examples

调用示例:

js
function SearchFinished(virtualNode: VirtualNode) {
    (window as any).root = re
    console.log(re)
}
cloud.expertSearchManager.setSearchFinished(SearchFinished)
function SearchFinished(virtualNode: VirtualNode) {
    (window as any).root = re
    console.log(re)
}
cloud.expertSearchManager.setSearchFinished(SearchFinished)

Parameters

NameTypeDescription
fn(virtualNode: VirtualNode) => void回调函数,virtualNode为虚节点

Returns

void


advancedRetrieval

advancedRetrieval(rootNode, rules, ignoreCase): Promise<boolean>

Details

根据条件检索节点,通过回调获取结果

Examples

调用示例:

js
const rules: expertSearch[] = [
  {
   type: 'DirectoryTree',
   name: 'nodeName',
   condition: 'like',
   value: '设备%',
   connector: 'where',
  },
  {
   type: 'DirectoryTree',
   name: 'nodeName',
   condition: '=',
   value: '设备',
   connector: 'where',
  },
  {
   type: 'Guid',
   name: 'nodeGuid',
   condition: '=',
   value: '5acd17629aef894b4ab37959f19f5404',
   connector: 'orWhere',
  },
  {
   type: 'rvmprop',
   name: 'ColorIndex',
   condition: '=',
   value: '1',
   connector: 'orWhere',
  },
 ]
 const aaaa = await cloud.getSceneManager()
 const noderoot = await aaaa.getRootNode3D()
 const expert = await cloud.getExpertSearchManager()
 let a
 if (noderoot)
   a = await expert.advancedRetrieval(noderoot, rules, false)}
 console.log(a)
const rules: expertSearch[] = [
  {
   type: 'DirectoryTree',
   name: 'nodeName',
   condition: 'like',
   value: '设备%',
   connector: 'where',
  },
  {
   type: 'DirectoryTree',
   name: 'nodeName',
   condition: '=',
   value: '设备',
   connector: 'where',
  },
  {
   type: 'Guid',
   name: 'nodeGuid',
   condition: '=',
   value: '5acd17629aef894b4ab37959f19f5404',
   connector: 'orWhere',
  },
  {
   type: 'rvmprop',
   name: 'ColorIndex',
   condition: '=',
   value: '1',
   connector: 'orWhere',
  },
 ]
 const aaaa = await cloud.getSceneManager()
 const noderoot = await aaaa.getRootNode3D()
 const expert = await cloud.getExpertSearchManager()
 let a
 if (noderoot)
   a = await expert.advancedRetrieval(noderoot, rules, false)}
 console.log(a)

Parameters

NameTypeDescription
rootNodeNode | VirtualNode检索初始根节点
rulesexpertSearch[]检索条件
ignoreCasenull | boolean是否忽略大小写

Returns

Promise<boolean>


getAllPropertyGroupsName

getAllPropertyGroupsName(): Promise<string[]>

Details

获取节点下的所有属性组

Examples

调用示例:

js
const expert = await cloud.getExpertSearchManager()
const groups = await expert.getAllPropertyGroupsName()
const expert = await cloud.getExpertSearchManager()
const groups = await expert.getAllPropertyGroupsName()

Returns

Promise<string[]>

返回加载模型的所有属性组