为EnhancedGrid使用过滤器和分页插件时,会从dojox \ grid \ enhanced \ templates加载HTML模板。
通过使这些HTML文件成为增强型网格内联JavaScript的一部分,我有什么方法可以避免服务器对这些HTML文件的请求?
答案 0 :(得分:0)
您应该创建一个自定义dojo构建,以便创建一个js文件。按照之前的质量保证书中的说明进行操作:
How to build Dojo into a single file, given a list of dependencies?
修改强>
构建应该内联添加这些html文件,但不能。我google了一下,发现这个链接与你的问题有关:
http://grokbase.com/t/dojo/dojo-interest/121e536t64/enhancedgrid-filter-problem
它建议使用此链接进行修复
http://dojo-toolkit.33424.n3.nabble.com/Custom-build-including-CSS-and-HTML-files-td3536573.html
<强>引用强>
如果您使用AMD风格的模块定义,那么您可以指定文本依赖关系,如下所示:
define(["dojo/text!some/file.html", "other/module"],
function(template, otherModule){
...
// to use the contents of the html file, treat template as if it were a normal string
someNode.innerHTML = template;
...
});
构建系统应自动将文本依赖项转换为内联字符串文字。大多数Dojo文件已经过格式化以使用此功能,但我无法考虑dojox模块。我不确定依赖声明的dojo.require / dojo.provide系统是否可以使用类似的功能。
答案 1 :(得分:0)
我有解决方案。那些从这个问题中琢磨的那些人。请注意,Dojo 1.7.1存在错误,我们需要使用Dojo 1.8.3并在build命令中使用internStrings选项。您应该看到在构建报告中实际嵌入HTML文件。