我们正在使用 RequireJS 和 Node 构建一个项目,并在服务器端和客户端重用模块。到目前为止一切都很好(需要解决一些小问题)。
一个问题似乎是延迟回调中的错误永远不会显示在节点控制台中(或以任何其他方式显示)。使调试变得非常困难。
asdasdasd(); // Throws error, function is undefined, as intended
this.loadOrganization(organization_key, true).then(function(org) {
asdasdasd(); // No error anywhere, script just stops executing
});
loadOrganization 返回一个延迟对象,并且回调被正常调用 - 但是没有显示与 undefined 有关的错误消息(评估模块时节点报告一般语法错误)。
我们使用 jsdom 和 jquery 在服务器端为浏览器引导内容。然后将 jquery 从 jsdon 传递给大多数方法 - 所以用于 loadOrganization 的延迟对象是来自 jQuery 通过 jsdom 的对象。然而,从 npm installed jquery 将 deferred used 更改为 one 并没有什么区别。
任何建议都会有所帮助,当没有打印错误时很难调试。