标签: grails asset-pipeline assets dynamically-generated
我有几个JavaScript资源包含不断变化的数据。一种解决方案是使用AJAX来检索这些数据,但我正在努力保持简洁,只需将数据包含在JavaScript资源文件中(我设置了一个使用GSP模板引擎解析的自定义资产文件类型JavaScript文件中的任何GSP标记......这是不断变化的数据的来源。)
我唯一想知道的是如何在WAR文件创建期间不预先编译这些资产,而是在每次请求时重新编译这些资产,以便包含最新数据。使用Asset Pipeline插件甚至可以实现这一点吗?
答案 0 :(得分:0)
在每个请求上重新生成javascript文件似乎与资产管道方法相反。资产管道用于提供静态资产(如docs的第一部分所述)。
最干净的方法是将静态内容放入资产管道并通过ajax执行动态数据。然后你甚至可以通过http头更好地处理缓存(对于ajax调用)。
但是,asset-pipeline可以使用<asset:script type="text/javascript" />将脚本元素嵌入到页面中(如docs中的“延迟脚本”部分所述)。但这似乎不是更清楚,然后ajax调用。您提到的另一个选项(如果可能的话)声明要重新生成某些文件似乎不适合资产管道。
<asset:script type="text/javascript" />