Gulp error: Path must be a string

Gulp error: Path must be a string

我遇到了 gulp.js 的问题。

重现步骤:

$ composer global require "laravel/installer=~1.1"
$ laravel new myproject
$ cd myproject
$ php artisan serve 
$ npm install
$ npm rm bootstrap-sass —save
$ npm install foundation-sites —save
$ npm install motion-ui —save

然后我复制

_settings.scss 

来自

node_modules/foundation-sites/scss/settings 

resources/assets/sass

在app.scss然后我把每个基础导入

最后我写了这里报告的 Elixir 任务:

http://zecipriano.com/en/2015/12/laravel-elixir-and-zurb-foundation-revisited/

但是当我从终端启动 gulp 时:

 path.js:7
  throw new TypeError('Path must be a string. Received ' + inspect(path));

...不知道该怎么办

一切都更新了,所以我认为这不是版本问题。

[编辑]

$ node -v

v6.8.0

这是我的 gulpfile.js:

const elixir = require('laravel-elixir');

require('laravel-elixir-vue-2');

/*
 |--------------------------------------------------------------------------
 | Elixir Asset Management
 |--------------------------------------------------------------------------
 |
 | Elixir provides a clean, fluent API for defining some basic Gulp tasks
 | for your Laravel application. By default, we are compiling the Sass
 | file for our application, as well as publishing vendor resources.
 |
 */

elixir(function(mix) {

    // Sass
    var options = {
        includePaths: [
            'node_modules/foundation-sites/scss',
            'node_modules/motion-ui/src'
        ]
    };

    mix.sass('app.scss', null, options);

    // Javascript
    var jQuery = '../../../node_modules/jquery/dist/jquery.js';
    var foundationJsFolder = '../../../node_modules/foundation-sites/js/';

    mix.scripts([
       jQuery,
       foundationJsFolder + 'foundation.core.js',
       // Include any needed components here. The following are just examples.
       foundationJsFolder + 'foundation.util.mediaquery.js',
       foundationJsFolder + 'foundation.util.keyboard.js',
       foundationJsFolder + 'foundation.util.timerAndImageLoader.js',
       foundationJsFolder + 'foundation.tabs.js',
       // This file initializes foundation
       'start_foundation.js'
    ]);

});

有什么想法吗?

提前致谢。

问题是选项已从第三个参数移到第四个参数。你可以 运行 它与:

   mix.sass('app.scss', null, null, options);

干杯:D

我安装了节点 4.4.2 并解决了同样的错误。然后我直接传递了目录字符串,而不是使用带有方向的数组。