回答
在配置模式中设置的参数没有对脚本产生影响,通常是因为你没有正确读取或使用这些配置值。以下是一些排查和解决步骤:
1. 确认配置保存的位置
Hamibot 的配置会保存在 hamibot.env
对象中。你需要通过解构赋值的方式取出对应的配置项。
例如,如果你在配置表单中定义了一个字段:
{
"name": "msg",
"type": "text",
"label": "提示信息"
}
那么在脚本中应该这样使用:
const { msg } = hamibot.env;
toastLog(msg); // 显示配置中的值
如果 msg
没有显示出来,请检查是否在脚本中正确引用了这个变量。
2. 默认值与空值
如果你没有在配置界面填写值,默认情况下字段可能是空的。建议在配置界面为每个字段提供默认值,确保即使用户未输入内容,脚本也能正常运行。
例如:
{
"name": "delayTime",
"type": "number",
"label": "延迟时间(毫秒)",
"value": "1000"
}
然后在脚本中使用它:
const { delayTime } = hamibot.env;
sleep(delayTime); // 使用配置中的延迟时间
3. 检查脚本是否重新加载了配置
有时你在修改配置后,脚本可能仍在运行旧版本。请确保每次更改配置后都重新启动脚本,以便新的配置生效。
4. 调试输出配置信息
为了验证配置是否正确加载,可以将整个 hamibot.env
输出到日志中:
log("当前配置:" + JSON.stringify(hamibot.env));
查看日志是否有你期望的值。如果没有,说明配置没有被正确应用。
5. 检查配置是否保存成功
在 Hamibot 编辑器中,配置需要手动保存。请确认你在配置页面点击了“保存”按钮。如果没有保存,脚本读取的是上一次保存的配置。
示例代码:完整流程
// 文档地址 https://docs.hamibot.com/
// 从配置中获取 delayTime 和 msg
const { delayTime, msg } = hamibot.env;
// 输出配置信息
log("当前配置:" + JSON.stringify(hamibot.env));
// 显示提示信息
toastLog(msg);
// 延迟指定时间
sleep(delayTime);
确保你的配置表单中有 delayTime
和 msg
字段,并且它们的值已经被正确设置。
如果以上步骤仍无法解决问题,你可以尝试简化配置和脚本逻辑,逐步排查问题所在。如果仍然无效,可以发送邮件到 support@hamibot.cn 获取进一步帮助。
ℹ️ 本回答由 AI 生成,内容仅供参考