在我的压缩器设置中,我在大多数javascript中使用SlimIt:
COMPRESS_JS_FILTERS = ['compressor.filters.jsmin.SlimItFilter', ]
我的一些js文件不应该通过SlimIt,因为文件已经缩小,或者当javascript与其他文件缩小时会抛出一些错误.我的模板块最终看起来像这样:
{# code that I minify #}
{% block compressed_libs %}
{% compress js %}
<script src="/static/js/compress_this.js"></script>
<script src="/static/js/also_compress_this.js"></script>
...
{% endcompress %}
{% endblock %}
{# code that shouldn't minify #}
{% block non-compressible_libs %}
<script src="/static/js/already.min.js"></script>
<script src="/static/js/breaks-everything.js"></script>
{% endblock %}
Run Code Online (Sandbox Code Playgroud)
我可以为不同的块/文件设置不同的压缩过滤器规则,以便在跳过SlimIt时我的"不可压缩"文件仍然可以通过压缩器连接在一起吗?
正如approxiblue所说,看起来没有办法指定模板中每个压缩块使用哪些过滤器(在 Compressor 1.5 中)。
我会更新这个答案,有人想出了一些东西。
似乎可以通过向compress 模板标记添加一个参数来解决这个问题,以允许它返回一个CompressorNode带有标志的跳过过滤器base.py hunks()
我会看看 Compressor 社区对此有何看法,但如果您有任何想法,请告诉我。
| 归档时间: |
|
| 查看次数: |
214 次 |
| 最近记录: |