我尝试使用 htmlcompressor
(javascript
编译器 - GCC - google 闭包编译器)缩小 xhtml
页面。
GCC 优化字符串中引号的使用。如果在字符串中我们使用单引号字符,那么 GCC 将以双引号字符结束字符串,反之亦然。如果我们在构建项目时完成了 javascript
代码,但未使用 JSF
,则此方法有效。
例如,当我们有带有代码的 JSF
页面时,无法解决该问题
....
<script type="text/javascript">
var message = "#{my.localized.bundle}"
</script>
....
其中#{my.localized.bundle}
是本地化消息
。
如果我尝试在“运行”时而不是在构建项目时压缩此示例,那么客户端 javascript
代码将会被破坏。
生成的 javascript
代码(使用 GCC 引用优化并在渲染响应 JSF
阶段之后)将:
....
<script type="text/javascript">
var message = 'locali'zed message'
</script>
....
问题:
- GCC 有选项(标志),允许禁用对我来说无用的优化?
- 我可以使用哪种压缩器来缩小基于 JSF 的页面? (YUI 编译器除外,它也进行引号优化)
最佳答案
您希望对代码进行转义以在字符串中使用。您可以通过使用输出包装器命令行选项来指定,如下所示:
--output_wrapper="%output|jsstring%"
在这里,您实际上不会添加任何包装文本,而只是利用指定您希望转义输出以便在字符串中用于嵌入目的的功能。
关于javascript - 关闭编译器。基于 JSF 的页面中的单/双引号优化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21030570/