网络资产的iife过滤器
webassets-iife的Python项目详细描述
webassets-iife是一个webassets过滤器,用于在 生命周期,以防止全球泄漏和改善缩小。
安装
pip install webassets-iife
用法
例如,带烧瓶:
from flask.ext.assets import Environment, Bundle from webassets_iife import IIFE # ... assets = Environment(app) js = Bundle('myscript1.js', 'myscript2.js', filters=(IIFE, 'closure_js'), output='all.min.js') assets.register('js_all', js)
这将把myscript1.js和myscript2.js压缩到一个js块中,包装 它在一个生活中,并缩小它。
生活?
iife是立即调用的函数表达式。是个匿名者 在此之后立即声明和调用的函数。它用在 javascript创建一个封闭的环境,不能从 在外面。
// a and b can be accessed by external code var a = 3, b = 1; // ... some code ... // a and b can't be accessed by external code (function() { var a = 3, b = 1; // ... some code ... })();
在生命周期中包装代码有助于迷你者看到死代码,因为它 知道这些局部变量不能从外部访问,因此 可以删除它们或损坏它们的名称。