dojo 18n 资源文件中的语法错误处理

Syntax error handling in dojo 18n resource file

require(["dojo/i18n!myapp/nls/extTools_i18nStrings"],function(extTools_i18nStrings){  
// Do something with the loaded file  
});

如果资源文件(extTools_i18nStrings)有语法错误,将显示在dojo.js中。我如何在我的代码中处理它? 尝试捕获块无效。

提前致谢。

Error: Script error .............dojo.js:15

快速回答是您不想。正确的做法是修复捆绑包。这与您的应用程序代码中存在错误相同,您不会期望代码 'handle' 那样。

但由于 i18n 是一个 AMD 插件 运行 作为加载程序的一部分(这就是为什么你不能 try/catch 它),可能会通过 AMD micro event API 报告错误,您可以使用它来显示更好的错误。除了显示错误之外,我不确定你是如何 'handle' 这个语法错误的。

如果您无法通过开发或构建过程的某些部分控制捆绑包的质量,您将不得不发明自己的替代方案 dojo/i18n,并且您可能不想失败您所有捆绑包的路线。