- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在编写一个使用许多 JS 文件的应用程序。 Underscore、Backbone、jQuery、 slider 的 jQuery 插件、模型、路由器、集合和 View 的几个文件。
在我的开发机器中,我分别加载每个文件,但在生产中我只使用一个 JS 文件(缩小、gziped、较少的 http req 等)。
在我的构建过程中,每个文件都用 UglifyJS 缩小,然后连接到 prod.js。这是构建该文件的正确方法吗?或者我应该将每个文件连接到 prod.js 中,然后用 UglifyJS 缩小?
非常感谢!
最佳答案
我使用 Gulp 测试了每种方法的输出.
测试设置
我使用了 9 个 JavaScript 文件,总共 19.15 KB 连接时(未缩小)。每个文件都以 'use strict';
开头陈述。
结果:
'use strict';
声明'use strict';
声明'use strict';
声明是 13 字节 . 8 × 13 字节 = 104 字节,这说明了 0.1 kB 的差异。 'use strict';
开头声明gulpfile.js
我用了:
var gulp = require('gulp'),
concat = require('gulp-concat'),
uglify = require('gulp-uglify');
var files = [
'!app/scripts/**/*Spec.js', // Exclude test files
'app/scripts/**/*.js'
];
// Register tasks
gulp.task('concat-min', function() {
return gulp.src(files)
.pipe(concat('script.min.js'))
.pipe(uglify())
.pipe(gulp.dest('dist'));
});
gulp.task('min-concat', function() {
return gulp.src(files)
.pipe(uglify())
.pipe(concat('script.min.js'))
.pipe(gulp.dest('dist'));
});
关于javascript - UglifyJS:连接和缩小或反之亦然?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10983636/
我有以下命令: uglifyjs main.js bar.js -m toplevel reserved=['$','addTo','exports'] -c --source-map -o
我在尝试覆盖被丑化的文件时遇到问题。不幸的是,我无法输出到不同的文件名。 以下是一些尝试: uglifyjs dist/main.*.js --compress drop_console=true -
我正在编写一个使用许多 JS 文件的应用程序。 Underscore、Backbone、jQuery、 slider 的 jQuery 插件、模型、路由器、集合和 View 的几个文件。 在我的开发机
我在 2012 年发现了一个有类似问题的帖子,但是它调用 uglifyjs 的方式不同 Uglify-js doesn't mangle variable names 我有一个 Windows 7 环
我已将 uglifyjs 插件添加到我的项目中grails install-plugin uglify-js-minified-resources . 还添加了 compile ":uglify-js
我正在使用 UglifyJS破坏和压缩我的 SPA 的 JavaScript 代码。这对于生产来说没问题,但是我只想在 Debug模式下编译时附加所有 JS 文件。 我尝试省略 -c -m 选项(co
在我的代码库中,我有这个与 fabric.js 交互的自定义代码: export function cropToCircle(object) { let minDim = Math.min
我正在尝试获取一个简单的 UglifyJS (v2.3.6) 示例来处理压缩。 具体来说,“未使用”选项,如果从未使用过,变量和函数将被删除。 这是我在命令行上的尝试: echo "function
我有以下代码(为方便讨论而简化): var a = 1; var b = []; if (checkIfAisOne(a)) { b = ['something'] } console.log
我想知道如何从命令行使用 UglifyJS 压缩内联脚本。 所有示例都显示文件名,即 uglifyjs somefile.js -o somefile.min.js 我想做的是: uglifyjs -
我正在尝试使用 UglifyJS 来缩小我的代码,但我遇到了一些问题。我有这样的文件结构: /deploy /assets /js ((minified file goes h
我正在尝试缩小一个 24MB 的 JavaScript 文件,但在大约 10 分钟的运行时间后,脚本退出并显示内存不足的错误。有什么标志可以提供帮助吗?我正在运行具有 16GB 物理内存的 Windo
根据文档,UglifyJS 可以破坏除提供的保留列表中的所有属性名称。是否有可能以其他方式做到这一点,所以只有提供的列表中的属性才会被破坏? 如果是这样,我需要将哪些选项传递给 uglify.mini
uglify-js和uglify-es的描述是相同的,除了uglify-es大写“for ES6 +”。基于此,人们会认为uglify-es是ES6代码的最佳选择。另一方面,uglify-es较旧-5
如何使用 Webpack 和 UglifyJS 删除死代码,但不最小化代码? 最佳答案 您可能想使用 beautifier options .最低限度的想法: new webpack.optimize
有没有办法告诉 UglifyJS 跳过特定的代码部分,也许使用这样的注释: // uglifyjs:skipStart filter = function(item){ /* some crazy f
目前我可以在 Node 环境中使用 UglifyJS 进行缩小。然而,读完这篇blog ,我意识到这个插件还有更多选项。但我无法将这些关键字转换为 Node 环境可接受的语法。 现在,我正在使用 ne
关闭。这个问题需要debugging details .它目前不接受答案。 编辑问题以包含 desired behavior, a specific problem or error, and th
在测试服务器上部署我的应用程序时,我遇到了一个错误,其中 UglifyJS 确实更改了 npm 依赖模块的函数参数,这些参数的名称很重要;一些函数是动态调用的,我正在使用 function-argum
A lot of warnings with webpack uglify 我已经关闭了 UglifyJS 中的警告,但我仍然收到来自 webpack 的一些警告。 WARNING in main-0
我是一名优秀的程序员,十分优秀!