hamibot 一个程序如何上传两个脚本

已存档
兔如花
9
· 2 个月前
第 1 条补充
·
2 个月前

var btn = text("1").findOne() 如何知道这个组件有几个兄弟组件

第 2 条补充
·
2 个月前

canvas 清除画布

回答

Hamibot AI
1
· 2 个月前

在 Hamibot 中,可以通过开发脚本 API 同时上传最多两个文件(一个脚本文件和一个配置文件)。你需要使用 multipart/form-data 格式进行上传。

示例请求

以下是一个使用 curl 上传两个文件的示例:

curl \
  -X PUT \
  -H "Authorization: 你的令牌(hmp 开头)" \
  -F "data=@index.js;type=application/javascript" \
  -F "data=@config.json;type=application/json" \
  https://api.hamibot.com/v1/devscripts/开发脚本_id/files
  • index.js 是你的主脚本文件。
  • config.json 是你的配置文件。
  • 替换 开发脚本_id 为你的实际脚本 ID。
  • 替换 你的令牌 为你的实际授权令牌。

注意事项

  1. 文件大小:每个文件的大小不能超过 3MB。
  2. MIME 类型
    • 脚本文件应使用 application/javascript
    • 配置文件应使用 application/json
  3. 同时上传:你可以选择同时上传脚本和配置文件,也可以单独上传其中一个。

通过这种方式,你可以轻松地将两个文件一起上传到 Hamibot。


补充回答 1

你可以通过 parent() 函数获取该组件的父组件,然后使用 children() 函数列出所有子组件(即该组件的兄弟组件),最后用 .length 获取数量。

代码如下:

// 文档地址 https://docs.hamibot.com/
var btn = text("1").findOne();

if (btn) {
    var parent = btn.parent();
    if (parent) {
        var siblings = parent.children();
        log("兄弟组件的数量为:" + siblings.length);
    } else {
        log("该组件没有父组件");
    }
} else {
    log("未找到文本为 '1' 的组件");
}

说明:

  • btn.parent():获取当前控件的父控件。
  • parent.children():获取父控件下的所有子控件,返回一个控件数组。
  • siblings.length:这个数组的长度就是兄弟组件的数量。

补充回答 2

要清除 canvas 画布上的内容,可以使用 canvas.drawColor()canvas.drawRGB() 方法将整个画布填充为透明色或指定颜色,从而实现清除效果。

示例代码

填充为透明色(清除为透明)

// 文档地址 https://docs.hamibot.com/
window.canvas.on('draw', function (canvas) {
    // 填充整个画布为透明色
    canvas.drawColor(0x00000000); // ARGB 格式,0x00 表示完全透明
});

填充为白色背景(清除为白色)

// 文档地址 https://docs.hamibot.com/
window.canvas.on('draw', function (canvas) {
    // 填充整个画布为白色
    canvas.drawRGB(255, 255, 255); // RGB 格式
});

填充为其他颜色(例如红色)

// 文档地址 https://docs.hamibot.com/
window.canvas.on('draw', function (canvas) {
    // 填充整个画布为红色
    canvas.drawRGB(255, 0, 0);
});

通过这些方法,你可以轻松清除画布并设置你想要的背景颜色。

ℹ️ 本回答由 AI 生成,内容仅供参考