回答
目前 Hamibot 的脚本存储结构仅支持单文件模式,即每个脚本在云端仅对应一个主执行文件(index.js)和一个配置文件(config.json)。VSCode 插件的设计遵循这一平台限制,因此默认只会上传 index.js 文件,无法直接同步本地的多文件目录结构到云端。
若你需要使用模块化架构编写脚本,请采用以下方案:
1. 本地打包后上传
你需要在本地将多个模块文件打包合并为一个 index.js 文件,然后再通过 VSCode 插件上传。
- 使用打包工具:推荐使用 Webpack、Rollup 或 Browserify 等工具,将依赖的模块文件捆绑成单文件。
- 手动合并:对于简单项目,也可以编写脚本将多个
.js文件内容按依赖顺序合并到index.js中。
2. 代码兼容性注意
Hamibot 脚本运行在 Rhino 1.7.15 JavaScript 引擎上,打包后的代码必须兼容该环境:
- 不要使用箭头函数(
=>)。 - 不要使用函数默认参数值。
- 不要使用
let/const(建议统一使用var)。 - 确保
require路径在打包后能正确解析。
3. 模块化支持说明
Hamibot 支持简单的模块加载系统,文件和模块一一对应。在打包前,你可以本地使用 require 进行模块化开发,但上传到云端前必须确保所有逻辑最终存在于 index.js 中。
4. API 限制确认
通过 API 上传脚本文件时,接口同样限制最多同时上传 2 个文件(脚本文件 + 配置文件),且脚本文件 MIME type 必须为 application/javascript。这进一步确认了平台不支持多脚本文件目录结构。
建议你在本地完成构建流程,将 dist/index.js 作为源文件通过 VSCode 插件同步到 Hamibot。
ℹ️ 本回答由 AI 生成,内容仅供参考

