企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
## 为什么在网络集成开发环境的左侧(或从终端窗口)输入 require 时模块不起作用? 当你在右侧输入 require("modulename")并点击“发送到 Espruino”时,Espruino 网络集成开发环境会扫描你的代码以查找 require 语句,并从互联网加载相关模块。因为网络集成开发环境的左侧(或终端窗口)会将每个字符直接发送到 Espruino,所以当你按下回车键执行你的命令时,再加载模块就太晚了。 相反,Espruino 默认按照上面“独立 Espruino”标题下所提到的那样——它会在插入的 SD 卡(如果有插入)上查找模块。这就是为什么你可能会在控制台看到一个“错误:无法读取文件:未就绪”的错误消息。 ## 如果我从 SD 卡加载模块,SD 卡是否总是需要插入? 不。只要你在输入 save()之前对每个模块至少使用过一次 `require('module')`,那么所需的所有信息都将在 Espruino 内部被缓存。 ## 我可以动态加载(和卸载)模块吗? 可以。默认情况下,加载的每个模块都会被缓存(以避免模块被加载两次)。然而,你可以调用 `Modules.removeCached('modulename')`,这将从缓存中移除该模块并释放它所占用的内存。 ## 我如何制作自己的模块? 这很容易!请参阅[编写和提交模块(或更改)](编写和提交模块.md)