首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >吞咽cwd到投影根

吞咽cwd到投影根
EN

Stack Overflow用户
提问于 2015-04-18 12:01:19
回答 1查看 639关注 0票数 1

我现在的代码是:

代码语言:javascript
复制
gulp.task('_sass', function() {
    var files = [
        './vendor/bower_components/bootstrap-sass/assets/stylesheets/_bootstrap.scss',
        './resources/assets/sass/main.scss',
        './vendor/bower_components/bootstrap-rating/bootstrap-rating.css',
        './vendor/bower_components/select2/select2.css'
    ];
    return gulp.src(files)
    //return gulp.src(files)
        .pipe(concat('all.css'))
        .pipe(sass())
        .on('error', notify.onError(function (error) {
            return "Error: " + error.message;
        }))
        .pipe(gulp.dest('./public/css/'))
        .pipe(reload({stream: true}));
});

正如您所看到的,我有一个文件数组,在该数组中,我将我想要连接到.scss文件的所有路径存储到all.css中。但我知道这个错误:

代码语言:javascript
复制
Error: file to import not found or unreadable: base/normalize
Current dir: /Users/**/Code/Laravel/vendor/bower_components/bootstrap-sass/assets/stylesheets/

这是显而易见的,因为gulp使用数组的第一个路径作为它的基本目录。因此,我尝试将basecwd设置为'./',以便指定Laravel根目录。但这不管用。如何解决这个问题,这样我就可以使用所有这些.scss文件而不必将文件复制到其他目录中。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-04-19 17:28:13

这是一个棘手的问题,因为您不需要相对于gulpfile的基本工作目录,而是相对于所有Sass组件。

我说得对吗,'./resources/assets/sass/main.scss'是您自己使用的主要Sass文件?如果是这样的话,我建议在那里导入引导程序:

代码语言:javascript
复制
 @import '../../../vendor/bower_components/bootstrap-sass/assets/stylesheets/_bootstrap';

在let Sass处理文件时,Sass通常在处理相关URL方面要好得多。

而不是分割Sass和CSS文件,稍后使用流队列将它们捆绑起来:

代码语言:javascript
复制
var queue = require('streamqueue');

gulp.task('_sass', function() {
    return queue(
        // our CSS files
        gulp.src([
            './vendor/bower_components/bootstrap-rating/bootstrap-rating.css',
            './vendor/bower_components/select2/select2.css']
        ),
        // our Sass file, compiled to CSS
        gulp.src('./resources/assets/sass/main.scss')
            .pipe(sass())
    )
    // all the rest
    .pipe(concat('all.css'))
    .on('error', notify.onError(function (error) {
        return "Error: " + error.message;
    }))
    .pipe(gulp.dest('./public/css/'))
    .pipe(reload({stream: true}));
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29717040

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档