【发布时间】:2013-06-09 11:48:34
【问题描述】:
我是一个大型 Dojo 项目的开发人员,我在使用 Google Closure 编译器时遇到了一些问题。
我们有大约一百个用于 Dijit 小部件的模板,因此计划是让 Closure 编译器将 HTML 内联到 JavaScript 文件中,而不是要求它们采用 AMD 样式。
为了实现这一点,我将 /profiles/app.profile.js 中的“mini”参数从 true 更改为 false。
编译时,一切似乎都正常,即使在运行应用程序时我也没有问题,但发生了一些奇怪的事情。
即使 HTML 模板在 dojo.js 文件中正确内联,dojo 仍在向服务器发出对相应模板文件的 HTTP 请求!
通过检查 Closure 编译器生成的“美化”版本,我可以观察到每个 HTML 模板存在于两个不同的位置:
1) 在 JavaScript 中内联,格式如下:
"url:path/to/my/template.html":"<p>Some more HTML</p>"
2) 作为 AMD 要求中的必需伪模块:
dojo/text!./path/to/my/template.html
我在他们网站的 BuildSystem 类别中搜索了错误报告:BuildSystem,但最终找不到任何相关帮助。
这是我只是错误地使用了 Google Closure Compiler 还是这是一个开放/未报告的错误?
如何解决此问题?
提前非常感谢!
【问题讨论】:
标签: widget dojo template-engine google-closure-compiler