0
我有一个Visual Studio模板,此默认一饮而尽文件:压缩CSS/JS到他们的个人文件
/// <binding BeforeBuild='clean, minPreBuild' />
"use strict";
var gulp = require("gulp"),
rimraf = require("rimraf"),
concat = require("gulp-concat"),
cssmin = require("gulp-cssmin"),
uglify = require("gulp-uglify");
var webroot = "./wwwroot/";
var paths = {
js: webroot + "js/**/*.js",
minJs: webroot + "js/**/*.min.js",
css: webroot + "css/**/*.css",
minCss: webroot + "css/**/*.min.css",
concatJsDest: webroot + "js/_site.min.js",
concatCssDest: webroot + "css/_site.min.css"
};
gulp.task("clean:js", function (cb) {
rimraf(paths.concatJsDest, cb);
});
gulp.task("clean:css", function (cb) {
rimraf(paths.concatCssDest, cb);
});
gulp.task("clean", ["clean:js", "clean:css"]);
gulp.task("min:js", function() {
return gulp.src([paths.js, "!" + paths.minJs], { base: "." })
.pipe(concat(paths.concatJsDest))
.pipe(uglify())
.pipe(gulp.dest("."));
});
gulp.task("min:css", function() {
return gulp.src([paths.css, "!" + paths.minCss])
.pipe(concat(paths.concatCssDest))
.pipe(cssmin())
.pipe(gulp.dest("."));
});
gulp.task("min", ["min:js", "min:css"]);
gulp.task("minPreBuild", ["min:js", "min:css"]);
我遇到的问题是我的js的一个目录中的文件,对淘汰赛的依赖,但我只在网站上的其中一页上使用淘汰赛。我不想在我的共享视图中包含knockout,并且默认将所有文件捆绑到单个文件中导致JS错误“ko is undefined”,因为其中一个JS文件依赖于KO。
有没有一种方法可以单独缩小文件,而不需要将其解码为主“site.min.css”?
抱歉,我想我还不清楚,这不是淘汰赛本身我正在涅槃这是有问题的,这是我的网站的js文件之一引用淘汰赛功能。这一页有一个淘汰赛依赖,所以我不希望它被捆绑到“main.js”,因为淘汰赛将需要包括在每个页面,以避免“blog.js”抛出一个错误W /它对淘汰赛的依赖。希望这是有道理的? – Kritner
那又如何?真的没有什么区别。只是意味着你必须排除一个JavaScript文件而不是'knockout.js'。我上面的答案仍然适用。 –
啊,的确我会给它一点点,谢谢! – Kritner