Skip to content
On this page

Ui节点相关

typescript
import core from 'cheese-core';
const uinode = new core.uinode();
typescript
type uiObj = {
    text: (text:string) => uiObj;
    _text: string;

    _id: string;
    id: (text:string) => uiObj;

    desc: (text:string) => uiObj;
    _desc: string;

    clz: (text:string) => uiObj;
    _clz: string;

    pkg: (text:string) => uiObj;
    _pkg: string;

    bounds: (text:string) => uiObj;
    _bounds: string;

    isClickable: (text:string) => uiObj;
    _isClickable: boolean;

    and: boolean;
    or: boolean;
};

筛选节点:forEachNode(callback:Callback): this

🔒权限: 无障碍

扩展属性:

  • 都符合:and
  • 一个符合就可以:or

参数:

  • any (callback):筛选回调

返回值:

  • 🟢this:当前类对象
  • 🔴null

用法示例:

typescript
uinode.forEachNode((e: core.uinode['uiobj']) => {
    return e.text("连接").and
})

清除节点缓存:clearNodeCache(): boolean

🔒权限: 无障碍

参数:

  • any (callback):筛选回调

返回值:

  • 🟢this:当前类对象
  • 🔴null

用法示例:

typescript
uinode.clearNodeCache()

判断有无节点:find(value: number=0)

🔒权限: 无障碍

参数:

  • number (value):节点在 nodeObj 数组中的索引值 不填默认为0

返回值:

  • 🟢boolean:true
  • 🔴boolean:fasle

用法示例:

typescript
uinode.forEachNode((e: core.uinode['uiobj']) => {
    return e.text("连接").and
}).find()

判断有无节点有则执行:findOn(value: number=0)

🔒权限: 无障碍

参数:

  • number (value):节点在 nodeObj 数组中的索引值 不填默认为0

返回值:

  • 🟢this:当前类对象
  • 🔴null

用法示例:

typescript
uinode.forEachNode((e: core.uinode['uiobj']) => {
    return e.text("连接").and
}).findOn().click()

获取节点父亲节点: getParent(value: number=0): this

🔒权限: 无障碍

参数:

  • number (value):节点在 nodeObj 数组中的索引值 不填默认为0

返回值:

  • 🟢uinode:uinode对象
  • 🔴null

用法示例:

typescript
let parent = uinode.forEachNode((e: core.uinode['uiobj']) => {
    return e.text("连接").and
}).getParent().obj
console.log(parent)

获取节点儿子节点: getChildren(value: number=0): this

🔒权限: 无障碍

参数:

  • number (value):节点在 nodeObj 数组中的索引值 不填默认为0

返回值:

  • 🟢uinode:uinode对象
  • 🔴null

用法示例:

typescript
let children = uinode.forEachNode((e: core.uinode['uiobj']) => {
    return e.text("连接").and
}).getChildren().obj
console.log(children)

获取节点text信息:getText(value: number=0)

🔒权限: 无障碍

参数:

  • number (value):节点在 nodeObj 数组中的索引值 不填默认为0

返回值:

  • 🟢string:text内容
  • 🔴null

用法示例:

typescript
uinode.forEachNode((e: core.uinode['uiobj']) => {
    return e.text("连接").and
}).getText()
console.log(text)

获取节点范围:getBounds(value: number=0)

🔒权限: 无障碍

参数:

  • number (value):节点在 nodeObj 数组中的索引值 不填默认为0

返回值:

  • 🟢string:范围信息
  • 🔴null

用法示例:

typescript
let bounds = uinode.forEachNode((e: core.uinode['uiobj']) => {
    return e.text("连接").and
}).getBounds()
console.log(bounds)

获取节点Id:getId(value: number=0)

🔒权限: 无障碍

参数:

  • number (value):节点在 nodeObj 数组中的索引值 不填默认为0

返回值:

  • 🟢string:id信息
  • 🔴null

用法示例:

typescript
let id = uinode.forEachNode((e: core.uinode['uiobj']) => {
    return e.text("连接").and
}).getId()
console.log(id)

获取节点Desc:getDesc(value: number=0)

🔒权限: 无障碍

参数:

  • number (value):节点在 nodeObj 数组中的索引值 不填默认为0

返回值:

  • 🟢string:Desc信息
  • 🔴null

用法示例:

typescript
let desc = uinode.forEachNode((e: core.uinode['uiobj']) => {
    return e.text("连接").and
}).getDesc()
console.log(desc)

获取节点Pkg:getPkg(value: number=0)

🔒权限: 无障碍

参数:

  • number (value):节点在 nodeObj 数组中的索引值 不填默认为0

返回值:

  • 🟢string:Pkg信息
  • 🔴null

用法示例:

typescript
let pkg = uinode.forEachNode((e: core.uinode['uiobj']) => {
    return e.text("连接").and
}).getPkg()
console.log(pkg)

获取节点Clz:getClz(value: number=0)

🔒权限: 无障碍

参数:

  • number (value):节点在 nodeObj 数组中的索引值 不填默认为0

返回值:

  • 🟢string:Clz信息
  • 🔴null

用法示例:

typescript
let clz = uinode.forEachNode((e: core.uinode['uiobj']) => {
    return e.text("连接").and
}).getClz()
console.log(clz)

节点尝试点击:tryClick(value: number=0)

🔒权限: 无障碍

当此节点点击失败,会尝试向上级容器尝试

参数:

  • number (value):节点在 nodeObj 数组中的索引值 不填默认为0

返回值:

  • 🟢boolean:true
  • 🔴boolean:fasle

用法示例:

typescript
let d = uinode.forEachNode((e: core.uinode['uiobj']) => {
    return e.text("连接").and
})
if (d.tryClick()) {
    console.log("点击成功")
}

节点点击:click(value: number=0)

🔒权限: 无障碍

失败率较高

参数:

  • number (value):节点在 nodeObj 数组中的索引值 不填默认为0

返回值:

  • 🟢boolean:true
  • 🔴boolean:fasle

用法示例:

typescript
let d = uinode.forEachNode((e: core.uinode['uiobj']) => {
    return e.text("连接").and
})
if (d.click()) {
    console.log("点击成功")
}

节点长按点击:longClick(value: number=0)

🔒权限: 无障碍

失败率较高

参数:

  • number (value):节点在 nodeObj 数组中的索引值 不填默认为0

返回值:

  • 🟢boolean:true
  • 🔴boolean:fasle

用法示例:

typescript
let d = uinode.forEachNode((e: core.uinode['uiobj']) => {
    return e.text("连接").and
})
if (d.longClick()) {
    console.log("点击成功")
}

尝试节点长按点击:tryLongClick(value: number=0)

🔒权限: 无障碍

当此节点点击失败,会尝试向上级容器尝试

参数:

  • number (value):节点在 nodeObj 数组中的索引值 不填默认为0

返回值:

  • 🟢boolean:true
  • 🔴boolean:fasle

用法示例:

typescript
let d = uinode.forEachNode((e: core.uinode['uiobj']) => {
    return e.text("连接").and
})
if (d.tryLongClick()) {
    console.log("点击成功")
}

双击点击节点:doubleClick(value: number=0)

🔒权限: 无障碍

参数:

  • number (value):节点在 nodeObj 数组中的索引值 不填默认为0

返回值:

  • 🟢boolean:true
  • 🔴boolean:fasle

用法示例:

typescript
let d = uinode.forEachNode((e: core.uinode['uiobj']) => {
    return e.text("连接").and
})
if (d.doubleClick()) {
    console.log("点击成功")
}

全局节点点击:globalClick(value: number=0)

🔒权限: 无障碍

常用来点击网页节点

参数:

  • number (value):节点在 nodeObj 数组中的索引值 不填默认为0

返回值:

  • 🟢boolean:true
  • 🔴boolean:fasle

用法示例:

typescript
let d = uinode.forEachNode((e: core.uinode['uiobj']) => {
    return e.text("连接").and
})
if (d.globalClick()) {
    console.log("点击成功")
}

全局长按节点:globalLongClick(value: number=0)

🔒权限: 无障碍

常用来点击网页节点

参数:

  • number (value):节点在 nodeObj 数组中的索引值 不填默认为0

返回值:

  • 🟢boolean:true
  • 🔴boolean:fasle

用法示例:

typescript
let d = uinode.forEachNode((e: core.uinode['uiobj']) => {
    return e.text("连接").and
})
if (d.globalLongClick()) {
    console.log("点击成功")
}