我正在尝试从 Moodle LMS 检索以前保存的数据,但似乎有些东西不起作用。这就是我正在做的:
我将 SCORM (v2004) 包加载到 Moodle 中并执行一些操作(例如保存导航数据或设置完成状态):
// Completion status always "unknown" at first time so I try to change it to incomplete:
API_1484_11.SetValue('cmi.completion_status', 'incomplete'); // "true"
...
API_1484_11.SetValue('cmi.location', '{"page":2}'); // "true"
然后稍后提交这些更改:
API_1484_11.Commit(''); // true
请求/响应:
当我离开并重新进入事件并尝试再次检索此数据时,API 返回空字符串或默认初始值。
// I've already initialized the API at this point.
API_1484_11.GetValue('cmi.completion_status'); // "unknown"
...
API_1484_11.GetValue('cmi.location'); // ""
我错过了什么吗?
我是否需要调用任何其他方法来从服务器或类似的东西检索数据?
或者我误解了这些方法的目的?
如果您能就此主题提供任何帮助,我将不胜感激。提前致谢。
最佳答案
promise 很重要。确保将 cmi.exit 设置为“暂停”。除非有人完成它,否则 moodle 中的 SCORM 2004 可能不是全功能的。最后我听说开发人员放弃了。因此,您可能正在处理 SCORM 1.2 实现。我在移动设备上,所以我希望能给你足够的提示来解决问题。祝你好运。
关于javascript - 无法从 LMS 检索以前保存的数据 - SCORM 2004,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46008375/