Trước đây trong các ứng dụng MVC của tôi, tôi đã sử dụng .NET để tối ưu hóa (ghép, rút gọn, vv) các tệp CSS của tôi. Tôi đã phải sử dụng tùy chỉnh chuyển đổi lớp học để xử lý các đường dẫn trong CSS của tôi như:Xử lý đường dẫn hình ảnh trong các tệp css khi được xử lý bởi gulp
.brand {
background-image: url("../images/logo.png");
}
hoặc thậm chí:
.brand {
background-image: url("/Content/images/logo.png");
}
Tôi đã thêm ngụm cho dự án gần đây nhất của tôi để kiểm tra front-end và Tôi nghĩ tôi cũng sẽ sử dụng nó để tự động tối ưu hóa các tệp CSS và JS của mình. Đây là nhiệm vụ của tôi ngụm để xử lý các file CSS:
var gulp = require('gulp');
var concat = require('gulp-concat');
var cssmin = require('gulp-minify-css');
var rename = require("gulp-rename");
var less = require('gulp-less');
var uglify = require('gulp-uglify');
gulp.task('styles', function() {
return gulp.src('./Content/custom/site.less')
.pipe(less())
.pipe(gulp.dest('./dist/css'))
.pipe(cssmin())
.pipe(rename({
suffix: '.min'
}))
.pipe(gulp.dest('./dist/css'));
});
Các tập tin CSS được giảm bớt, uglified vv thành công, nhưng các liên kết đến hình ảnh, ví dụ, là không chính xác. Đường dẫn tương đối của khóa học bây giờ tham khảo một cái gì đó như http://localhost/site-folder/dist/css/Content/images/logo
. Đường dẫn ban đầu giống như /Content/images/logo.png
kết thúc là http://localhost/Content/images/logo.png
, nhưng rất tiếc, chúng không tính đến các thư mục tên miền mà trang web của tôi có.
Bất kỳ ý tưởng nào?
Cảm ơn trước
Ngoài ra, bạn đang sử dụng các file cục bộ hay không? Tôi không quen với api gulp-less, nhưng với gulp-sass, bạn phải chỉ định thư mục nào chứa các tệp một phần và WILL có hiệu lực với đường dẫn hình nền. – Gina