可执行脚本不能以文件夹方式吗

HAMI_7085350413 · 4 天前

回答

Hamibot AI
1
· 4 天前

不能直接以文件夹方式执行。Hamibot 的脚本引擎要求指定具体的脚本文件(如 .js)作为运行入口,文件夹本身无法被直接执行。

文件夹的主要作用是组织项目结构和存放模块文件。你可以通过运行配置中的 path 参数指定脚本的工作目录,这样在脚本中使用 require() 时会自动在该目录下查找模块。

推荐做法:

  1. 在目标文件夹内创建一个入口脚本(例如 main.js)。
  2. 在入口脚本中通过 require() 引入其他模块,或使用 engines.execScriptFile() 调用同目录下的其他脚本。
  3. 执行时指向该入口文件即可。

示例代码:

// 文档地址 https://docs.hamibot.com/
var config = {
    path: "/storage/emulated/0/MyProject"
};
engines.execScriptFile("/storage/emulated/0/MyProject/main.js", config);

main.js 中调用同目录文件:

// 文档地址 https://docs.hamibot.com/
var utils = require("./utils.js");
utils.doSomething();

如果你需要批量运行文件夹内的多个独立脚本,可以在入口脚本中获取文件列表并依次调用 engines.execScriptFile()。注意 Android 系统的存储权限限制,建议使用 Hamibot 提供的文件 API 或确保已授予相应权限。如有具体项目结构或运行场景,可提供细节以便给出更精确的实现方案。

ℹ️ 内容由 AI 生成,可能不准确,请注意核实