在Play Framework 1
中,是否有一个标记在生成的页面中只包含一次javascript文件?
示例:
我想要以下代码:
#{press.script 'my.script.js'}
#{press.script 'my.script.js'}
仅将my.script.js
声明注入结果页面一次,以便Play生成以下内容:
<script src="/path/to/my.script.js"></script>
请注意,press
模块应为version >= 1.0.22
。
到目前为止,发现了所需的任何东西:
#{press.script 'my.script.js'}
只需在使用相同的js文件指定两次时抛出异常1.0.11
模块的press
版本添加了ignoreDuplicates
标记属性,根据文档,该属性应该执行所需的操作,但在下一版本中,神秘删除了 ... 1.0.12
模块的press
版本增加了press.allowDuplicates
添加到配置的可能性,但在下一个版本中,它又被神秘删除了 ...... #{press.single-script 'my.script.js'}
只是压缩js文件并将<script>
两次添加到生成的文件请告知
答案 0 :(得分:1)
我认为没有。我已经解决了类似的问题。
假设我有一个模板main.html
。所有其他模板都扩展了这一个。 Main.html
包括scripts.html
。根据当前网址,Controller会呈现扩展form.html
的{{1}}。在main.html
我有一个需要form.html
的小部件。为了确保它只包含在这个页面上(需要脚本),我设置了以下变量:
my.script.js
在#{set useMyScript: true /}
中,我将检查此变量并仅在需要时呈现此脚本:
scripts.html
所以,这不是你的情况,但我很确定你可以使用这个解决方案多次将useMyScript设置为true,并且只包含一次Javascript。
我希望这有帮助!