Greenscript CDN回退在Play框架1.2.5



我使用Play!1.2.5和Greenscript 1.2.8b。我希望有一个后备的jQuery和其他javascript库,如果一个CDN不响应。

    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
    <script>window.jQuery || document.write('<script src="@{'public/javascripts/jquery-1.7.2.min.js'}">x3C/script>')</script>

这工作得很好,但有办法做到这一点与Greenscript?

我曾尝试做同样的事情与greenscript,但其他脚本依赖于jQuery加载在同一时间,将打破网站:

#{greenscript.js 'https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js' } window.jQuery || document.write('<script src="@{'public/javascripts/jquery-1.7.2.min.js'}">x3C/script>') #{/greenscript.js}

如果有这样的东西就好了:

js.default=https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js || jquery-1.7.2.min

您的要求不太可能实现,因为greenscript在解析标记时不应该测试网络连接,因为很可能在预编译时internet不可用。

我建议你使用<script>标签而不是greenscript来加载jquery。

顺便说一句,1.2.8b是一个过时的版本。因为playframework不接受模块更新,你应该按照https://gist.github.com/greenlaw110/2868365更新你的greenscript版本。

最新更新