Gulp TypeError: Arguments to path.join must be strings

前端 未结 3 1872
说谎
说谎 2020-12-02 12:04

I have i problem with gulp-ruby-sass. When i try to run the watch task and change some .sass files it occurs error:

TypeError: Arguments to path.joi         


        
3条回答
  •  谎友^
    谎友^ (楼主)
    2020-12-02 12:44

    With the syntax changes in gulp-ruby-sass starting from 1.0.0-alpha, you'll need to use gulp-ruby-sass() instead of gulp.src() to compile your Sass from a file or directory.

    If you try to use the original syntax with newer or latest versions, you may encounter the following error:

    TypeError: Arguments to path.join must be strings

    For example, the original syntax in 0.7.x and earlier using gulp.src(), now deprecated:

    var gulp = require('gulp');
    var sass = require('gulp-ruby-sass');
    
    // gulp-ruby-sass: 0.7.1
    gulp.task('sass', function() {
        return gulp.src('path/to/scss')
            .pipe(sass({ style: 'expanded' }))
            .pipe(gulp.dest('path/to/css'));
    });
    

    The new syntax introduced in 1.x using gulp-ruby-sass() as a gulp source adapter:

    // gulp-ruby-sass: 1.x
    gulp.task('sass', function() {
        return sass('path/to/scss', { style: 'expanded' })
            .pipe(gulp.dest('path/to/css'));
    });
    

    Notice the difference in the first line of the return statement.

    Also keep in mind, as of this writing when using gulp-ruby-sass 1.0.0-alpha, globs are not supported yet.

提交回复
热议问题