问题标签 [yui-compressor]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
5428 浏览

asp.net - 在为 ASP.net 构建期间缩小内联 javascript?

我们有一些 ASP.net 页面,其中包含 50 多行特定于该页面的 javascript。我们想在 CruiseControl 构建过程中缩小 javascript。

我们已经使用 YUI Compressor 来压缩我们完整的 javascript 和 css 文件。但是我们不知道如何做内联javascript。

是否有一个 MSBuild 任务可以通过 asp.net 页面旋转并缩小 javascript?

0 投票
1 回答
740 浏览

yui-compressor - 如何使用 YUI 压缩器保存评论

我正在使用 YUI 压缩器来合并和缩小我的 JS 文件。我遇到的一个问题是评论被删除,即使我使用如下建议的格式:

这就是他们在文档和几个博客中所说的:

http://www.julienlecomte.net/yuicompressor/README

http://www.electrictoolbox.com/preserve-comments-yui-compressor/

关于什么可能是错的任何想法?

0 投票
1 回答
1619 浏览

javascript - YUI 压缩器未按预期运行

我尝试使用 YUI 压缩器压缩我的 JavaScript 文件,但不知何故它没有达到预期的效果。

JavaScript 文件在这里

压缩后的输出如下所示:

等等。

我所期望的是,“资源”、“模块”、“依赖”等变量将减少为 1、2 或 3 个字母的小标识符。

这是应该发生的事情吗?还是我的源文件有问题?

顺便提一句:

  1. 压缩机吐出这个输出(我使用了-v选项):

    [警告] 尝试在每个范围内使用单个 'var' 语句。={},主题路径={}; ---> var <--- _nullf=function(){};var WAIT_TIME_RECHECK_FETCHED

    [警告] 尝试在每个范围内使用单个 'var' 语句。var _nullf=函数(){}; ---> var <--- WAIT_TIME_RECHECK_FETCHED=300;var WAIT_TIME_LOAD_CALLBACK=20;var

    [警告] 尝试在每个范围内使用单个 'var' 语句。){};var WAIT_TIME_RECHECK_FETCHED=300; ---> var <--- WAIT_TIME_LOAD_CALLBACK=20;var WAIT_TIME_UNLOAD_CALLBACK=20;var

    [警告] 尝试在每个范围内使用单个 'var' 语句。WAIT_TIME_RECHECK_FETCHED=300;var WAIT_TIME_LOAD_CALLBACK=20; ---> var <--- WAIT_TIME_UNLOAD_CALLBACK=20;var WAIT_TIME_EVENT_FIRE=20;var

    [警告] 尝试在每个范围内使用单个 'var' 语句。WAIT_TIME_LOAD_CALLBACK=20;var WAIT_TIME_UNLOAD_CALLBACK=20; ---> var <--- WAIT_TIME_EVENT_FIRE=20;var WAIT_TIME_ADD_REPO_CALLBACK=20;$j

    [警告] 尝试在每个范围内使用单个 'var' 语句。WAIT_TIME_UNLOAD_CALLBACK=20;var WAIT_TIME_EVENT_FIRE=20; ---> var <--- WAIT_TIME_ADD_REPO_CALLBACK=20;$j.resources=resources;

    [警告] 尝试在每个范围内使用单个 'var' 语句。;}var modpath=path+"modules/module-list.js"; ---> var <--- thpath=path+"themes/theme-list.js";functionfinish(val

    [警告] 尝试在每个范围内使用单个 'var' 语句。+module+"/";}}for(---> var <--- thlist 中的主题){theme=thlist[theme

    [警告] 尝试在每个范围内使用单个 'var' 语句。false){returnfalse;}for(---> var <--- res in obj.prod){if(resources

    [警告] 尝试在每个范围内使用单个 'var' 语句。(var req in module.req){ ---> var <--- found=false;vardependents=depends[resources

    [警告] 尝试在每个范围内使用单个 'var' 语句。.req){var found=false; ---> var <---dependents=depends[resources[req].id

    [警告] 尝试在每个范围内使用单个 'var' 语句。[req].id];for(---> var <--- moduleIdIndex independent){if(moduleIdIndex==module

    [警告] 尝试在每个范围内使用单个 'var' 语句。,arg3){var id=""; ---> var <--- conf={};var callback=_nullf;

    [警告] 尝试在每个范围内使用单个 'var' 语句。="";var conf={}; ---> var <--- callback=_nullf;if(typeofarg1=="string"

    [警告] 尝试在每个范围内使用单个 'var' 语句。返回;}path=path+"module.js"; ---> var <--- done=false;functionfetchDoneCallback(){done

    [警告] 尝试在每个范围内使用单个 'var' 语句。{return;}var 回调=null; ---> var <--- recursive=null;if(typeofarg1=="function"

    [警告] 尝试在每个范围内使用单个 'var' 语句。[dep];}}}for(---> var <--- prod in modules[modId].prod){

    [警告] 尝试在每个范围内使用单个 'var' 语句。(true);return;}else{ ---> var <---dependents=depends[moduleId];for(var

    [警告] 尝试在每个范围内使用单个 'var' 语句。dependents=depends[moduleId];for(---> var <--- index independents){$.jswaf.unloadModule

    [警告] 不推荐使用 'eval'。此外,使用 'eval' 会降低压缩级别!,function(data){var conf= ---> eval <--- (data);var css=conf.css

    [警告] 尝试在每个范围内使用单个 'var' 语句。{var conf=eval(数据); ---> var <--- css=conf.css;for(i in

    [警告] 发现一个未声明的符号:$j){$.jswaf={}; ---> $j <--- =$.jswaf;var 资源={}

    [警告] 找到一个未声明的符号:ind evtListeners=getListeners(evt);for( ---> ind <--- in evtListeners){setTimeout(evtListeners[ind]

    [警告] 发现一个未声明的符号:i WAIT_TIME_EVENT_FIRE);}}else{for( ---> i <--- =eventfired[evt];i>0;

    [警告] 发现一个未声明的符号: mod ;delete depends[modId];for( ---> mod <--- independs){var deps=depends[mod

    [警告] 发现一个未声明的符号:dep deps=depends[mod];for( ---> dep <--- in deps){if(dep==modId)

  2. 我需要单独安装 Rhino 才能让 YUI 压缩器工作吗?还是它与 YUI 压缩器一起打包?

谢谢,jr

0 投票
3 回答
1326 浏览

javascript - 使用 YUICompressor 合并 JS 文件导致错误

我正在使用 YUI Compressor 组合多个 js 文件。该命令成功运行并正确输出组合文件。

但是,当我将我的页面指向它时,它似乎没有被正确读取,并且我在 Javascript 错误控制台中收到此错误。

我试过使用 --nomunge 和 --preserve-semi 选项,但仍然得到同样的错误。

有任何想法吗?

0 投票
7 回答
5696 浏览

javascript - 如何在 JavaScript 中不写“eval”而执行“eval”

事情是这样的,我们有一个大的 JS 库要压缩,但是如果YUI 压缩器找到“eval”语句,它不会完全压缩代码,因为担心它会破坏其他东西。这很好,但我们确切地知道评估了什么,所以我们不希望它变得保守,因为 MooTools JSON.decode 中有一个 eval 语句

所以基本上问题是,是否有任何替代(可能是创造性的)方法来编写返回 eval 函数的表达式?我尝试了一些,但没有骰子:

有任何想法吗?谢谢

0 投票
1 回答
4824 浏览

visual-studio-2010 - 在 Visual Studio 2010 中分别缩小 JS 和 CSS

我目前正在将一个项目迁移到 Visual Studio 2010,并试图弄清楚如何在构建时单独缩小 JS 和 CSS 文件。

在 Visual Studio 2008 中,我使用了一个Web 部署项目和一个引用YUI Compressor 的 C# 端口的构建任务。在 Visual Studio 2010 中,Web 部署项目似乎已集成到构建过程中。现在有这个Microsoft AJAX Minifier在公共测试版中,我比以往任何时候都更加困惑。

我发现这篇博文由于 CSS 限制,使得使用 Microsoft AJAX Minifier 的业务无法启动。这不应该令人困惑......它应该是 Visual Studio 2010 中的一个复选框。

是否有使用 Visual Studio 2010 的简单方法?我在这里想念什么人?

0 投票
1 回答
2239 浏览

javascript - YUI 压缩器是否支持捆绑多个文件?

我使用 jQuery 创建了一个模块化系统。是否有任何类似于 Dojo 的 Shrinksafe 的构建系统,可以将我的所有模块文件合并到一个文件中用于生产?

YUI Compresser 是关于单个文件压缩还是支持捆绑模块文件?JavascriptMVC 使用 Shrinksafe 的自定义构建。有关该方向的任何链接或信息也将有所帮助。提前致谢。

0 投票
1 回答
2121 浏览

windows - 如何使 yuicompressor jar 文件成为单例或全局可访问的?

我想将yuicompressor jar 文件放在一个文件夹中,以便我可以调用

java -jar yuicompressor-2.4.2.jar ...

使用 cygwin 从我系统上的任何地方。对于我使用的 bash 文件,我只是将它们放在一个公共文件夹中,并将文件夹的路径添加到我的 windows 用户的 PATH 环境变量中,并且在 cygwin 中找到了 bash 命令。

当我echo $PATH看到将 yuicompressor jar 放入 $PATH 中列出的文件夹时。

但是当我尝试java -jar yuicompressor-x.y.z.jar myfile.js -o myfile-min.js(例如)时,我收到以下错误消息:

无法访问 jarfile yuicompressor-2.4.2.jar

即使我尝试提供 jarfile 的绝对路径,我也会收到相同的错误消息。

我怎样才能做到这一点?

0 投票
1 回答
2687 浏览

ant - 让 ant concat 忽略 BOM 的?

我有一个 ant 构建,它将我的 javascript 连接到一个文件中,然后压缩它。问题是 Visual Studio 的默认编码将 BOM 附加到每个文件。如何配置 ant 以去除原本会出现在生成的连接文件中间的 BOM?

我的谷歌搜索揭示了这个讨论,这是我遇到的确切问题,但没有提供解决方案:http://marc.info/?l=ant-user&m= 118598847927096

0 投票
1 回答
463 浏览

jquery - YUICompressor:jquery 1.4.2 的错误缩小

当我尝试在 UNIX 机器上使用 YUICompressor 压缩 jQuery 时,它添加了一些奇怪的单词,导致 jquery init 崩溃:

注意 'get' 在 ,_jQuery=window.jQuery 之前。当然,源代码中没有“get”。

在 Windows 机器上压缩时一切正常。

有什么线索吗?