我很高兴使用requireJs并且我在设置模块的全局配置时遇到了问题。
我正在使用accountingJs并希望在这种情况下全局修改设置我想将符号从$更改为£。
如果没有RequireJS,您只需执行类似这样的操作,因为会计将在全局命名空间中
accounting.settings = $.extend(accounting.settings, {
currency: { symbol: '\u00A3 '}
});
accountingJs符合AMD标准并且与require完美配合,但我似乎无法找到一种将配置传递给它的方式而不是。
我已经在require docs here中看到了配置设置,我可以在这里设置配置但是accountingjs没有选择它(它没有被编码为!)。
我的问题是如何在页面内全局为AMD兼容模块设置这样的配置?
我可以看到一些选项
我真正要做的是有一种方法可以从require配置全局应用配置到已存在的模块吗?
答案 0 :(得分:1)
如果AMD模块不是设计为使用module.config
,那么您不能强制它使用它。您最后提到的解决方案是最强大的:创建一个包装器模块,根据需要配置实际模块。这个包装器可以使用module.config
来获取值。这个解决方案可能现在可以与RequireJS一起使用,并且很长一段时间以来,因为您使用的API功能已被充分记录并且是RequireJS功能的核心。
至于垫片,我不记得RequireJS的文档提供的解决方案包括使用垫片作为已经设计用于AMD加载器的模块。因此,如果使用垫片工作,那将是偶然而不是设计。