首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >运行gulp会给出"path.js:7抛出新的TypeError('Path必须是一个字符串。接收到‘+检查(路径));

运行gulp会给出"path.js:7抛出新的TypeError('Path必须是一个字符串。接收到‘+检查(路径));
EN

Stack Overflow用户
提问于 2016-11-06 02:28:53
回答 1查看 4.8K关注 0票数 2

在我的Wordpress项目中,我使用Laravel 来处理资产。直到今天一切都正常。

现在每当我运行gulp时,我都会得到:

代码语言:javascript
复制
$ gulp
path.js:7
    throw new TypeError('Path must be a string. Received ' + inspect(path));
    ^

TypeError: Path must be a string. Received { includePaths:
   [ 'bower_components/foundation-sites/scss/',
     'bower_components/slick-carousel/slick' ] }
    at assertPath (path.js:7:11)
    at Object.join (path.js:1211:7)
    at prefixOne (/Users/slick/Code/Komarnicki2/wp-content/themes/komarnicki/node_modules/laravel-elixir/dist/tasks/GulpPaths.js:143:43)
    at GulpPaths.prefix (/Users/slick/Code/Komarnicki2/wp-content/themes/komarnicki/node_modules/laravel-elixir/dist/tasks/GulpPaths.js:153:20)
    at GulpPaths.src (/Users/slick/Code/Komarnicki2/wp-content/themes/komarnicki/node_modules/laravel-elixir/dist/tasks/GulpPaths.js:44:25)
    at getPaths (/Users/slick/Code/Komarnicki2/wp-content/themes/komarnicki/node_modules/laravel-elixir/dist/tasks/recipes/sass.js:33:33)
    at Function.<anonymous> (/Users/slick/Code/Komarnicki2/wp-content/themes/komarnicki/node_modules/laravel-elixir/dist/tasks/recipes/sass.js:21:33)
    at Function.<anonymous> (/Users/slick/Code/Komarnicki2/wp-content/themes/komarnicki/node_modules/laravel-elixir/dist/bootstrap/EnableExtension.js:16:18)
    at /Users/slick/Code/Komarnicki2/wp-content/themes/komarnicki/gulpfile.js:7:9
    at global.Elixir (/Users/slick/Code/Komarnicki2/wp-content/themes/komarnicki/node_modules/laravel-elixir/dist/index.js:21:5)

我想我的node_modules目录可能有问题,所以我做了rm -rf node_modules,然后像往常一样做了npm install。一切都被拉了出来,但最后我看到了:

├──未满足的对等依赖流-browserify@*

我不知道这种未得到满足的依赖是否是原因。如果这可以帮助您,这就是我所拥有的软件的特定版本的输出:

node -v

v7.0.0

npm -v

3.10.8

gulp -v

CLI版本3.9.1 12:26:22本地版本3.9.1

这是我的gulpfile.js

它不喜欢来自includePaths的数组?我能请你帮忙吗?谢谢。

编辑:

这是我的package.json:

代码语言:javascript
复制
{
  "name": "slick",
  "version": "1.0.0",
  "devDependencies": {
    "gulp": "^3.9.1",
    "laravel-elixir": "^6.0.0-2"
  }
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-11-06 03:20:49

这个解决方案帮助了我:https://stackoverflow.com/a/40047852/4197938

问题是,这些选项已经从第三个参数移到第四个参数。

因此,我只是在null之前添加了额外的includePaths

mix.sass('app.scss',null,null <- -这是解决方案,{

然后运行gulp

代码语言:javascript
复制
$ gulp
[13:15:29] Using gulpfile ~/Code/Komarnicki2/wp-content/themes/komarnicki/gulpfile.js
[13:15:29] Starting 'all'...
[13:15:29] Starting 'sass'...
[13:15:29] 'sass' errored after 60 ms
[13:15:29] Error: Missing binding /Users/slick/Code/Komarnicki2/wp-content/themes/komarnicki/node_modules/node-sass/vendor/darwin-x64-51/binding.node
Node Sass could not find a binding for your current environment: OS X 64-bit with Node.js 7.x

Found bindings for the following environments:
  - OS X 64-bit with Node.js 6.x

This usually happens because your environment has changed since running `npm install`.
Run `npm rebuild node-sass` to build the binding for your current environment.
    at Object.<anonymous> (/Users/slick/Code/Komarnicki2/wp-content/themes/komarnicki/node_modules/node-sass/lib/index.js:15:11)
    at Module._compile (module.js:573:32)
    at Object.Module._extensions..js (module.js:582:10)
    at Module.load (module.js:490:32)
    at tryModuleLoad (module.js:449:12)
    at Function.Module._load (module.js:441:3)
    at Module.require (module.js:500:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (/Users/slick/Code/Komarnicki2/wp-content/themes/komarnicki/node_modules/gulp-sass/index.js:187:21)
    at Module._compile (module.js:573:32)
[13:15:29] 'all' errored after 63 ms
[13:15:29] Error in plugin 'run-sequence(sass)'
Message:
    Missing binding /Users/slick/Code/Komarnicki2/wp-content/themes/komarnicki/node_modules/node-sass/vendor/darwin-x64-51/binding.node
Node Sass could not find a binding for your current environment: OS X 64-bit with Node.js 7.x

Found bindings for the following environments:
  - OS X 64-bit with Node.js 6.x

This usually happens because your environment has changed since running `npm install`.
Run `npm rebuild node-sass` to build the binding for your current environment.
Stack:
Error: Missing binding /Users/slick/Code/Komarnicki2/wp-content/themes/komarnicki/node_modules/node-sass/vendor/darwin-x64-51/binding.node
Node Sass could not find a binding for your current environment: OS X 64-bit with Node.js 7.x

Found bindings for the following environments:
  - OS X 64-bit with Node.js 6.x

This usually happens because your environment has changed since running `npm install`.
Run `npm rebuild node-sass` to build the binding for your current environment.
    at Object.<anonymous> (/Users/slick/Code/Komarnicki2/wp-content/themes/komarnicki/node_modules/node-sass/lib/index.js:15:11)
    at Module._compile (module.js:573:32)
    at Object.Module._extensions..js (module.js:582:10)
    at Module.load (module.js:490:32)
    at tryModuleLoad (module.js:449:12)
    at Function.Module._load (module.js:441:3)
    at Module.require (module.js:500:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (/Users/slick/Code/Komarnicki2/wp-content/themes/komarnicki/node_modules/gulp-sass/index.js:187:21)
    at Module._compile (module.js:573:32)

然后我做了输出中所写的内容

npm rebuild node-sass

最后的gulp确实起了作用

代码语言:javascript
复制
$ gulp
[13:20:18] Using gulpfile ~/Code/Komarnicki2/wp-content/themes/komarnicki/gulpfile.js
[13:20:18] Starting 'all'...
[13:20:18] Starting 'sass'...
[13:20:19] Finished 'sass' after 900 ms
[13:20:19] Starting 'scripts'...
[13:20:19] Finished 'scripts' after 96 ms
[13:20:19] Starting 'copy'...
[13:20:19] Finished 'copy' after 52 ms
[13:20:19] Starting 'version'...
[13:20:19] Finished 'version' after 56 ms
[13:20:19] Finished 'all' after 1.11 s
[13:20:19] Starting 'default'...
┌───────────────┬──────────────────────────┬─────────────────────────────────────────────────────────────────────────────┬────────────────────┐
│ Task          │ Summary                  │ Source Files                                                                │ Destination        │
├───────────────┼──────────────────────────┼─────────────────────────────────────────────────────────────────────────────┼────────────────────┤
│ mix.sass()    │ 1. Compiling Sass        │ assets/sass/app.scss                                                        │ public/css/app.css │
│               │ 2. Autoprefixing CSS     │                                                                             │                    │
│               │ 3. Concatenating Files   │                                                                             │                    │
│               │ 4. Writing Source Maps   │                                                                             │                    │
│               │ 5. Saving to Destination │                                                                             │                    │
├───────────────┼──────────────────────────┼─────────────────────────────────────────────────────────────────────────────┼────────────────────┤
│ mix.scripts() │ 1. Concatenating Files   │ bower_components/fontfaceobserver/fontfaceobserver.js                       │ public/js/all.js   │
│               │ 2. Writing Source Maps   │ assets/js/font.loader.js                                                    │                    │
│               │ 3. Saving to Destination │ bower_components/jquery/dist/jquery.min.js                                  │                    │
│               │                          │ bower_components/foundation-sites/dist/foundation.min.js                    │                    │
│               │                          │ bower_components/moment/moment.js                                           │                    │
│               │                          │ bower_components/moment/locale/pl.js                                        │                    │
│               │                          │ bower_components/bLazy/blazy.js                                             │                    │
│               │                          │ bower_components/jQuery-viewport-checker/dist/jquery.viewportchecker.min.js │                    │
│               │                          │ bower_components/slick-carousel/slick/slick.min.js                          │                    │
│               │                          │ bower_components/masonry/dist/masonry.pkgd.js                               │                    │
│               │                          │ bower_components/imagesloaded/imagesloaded.pkgd.js                          │                    │
│               │                          │ bower_components/magnific-popup/dist/jquery.magnific-popup.js               │                    │
│               │                          │ assets/js/scripts.js                                                        │                    │
│               │                          │ assets/js/modules/*.js                                                      │                    │
│               │                          │ assets/js/other/*.js                                                        │                    │
├───────────────┼──────────────────────────┼─────────────────────────────────────────────────────────────────────────────┼────────────────────┤
│ mix.copy()    │ 1. Saving to Destination │ assets/fonts//**/*                                                          │ public/fonts/      │
├───────────────┼──────────────────────────┼─────────────────────────────────────────────────────────────────────────────┼────────────────────┤
│ mix.version() │ 1. Versioning            │ public/css/app.css                                                          │ public/build       │
│               │ 2. Rewriting File Paths  │ public/js/all.js                                                            │                    │
│               │ 3. Saving to Destination │                                                                             │                    │
│               │ 4. Copying Source Maps   │                                                                             │                    │
└───────────────┴──────────────────────────┴─────────────────────────────────────────────────────────────────────────────┴────────────────────┘
[13:20:19] Finished 'default' after 6.65 ms

我还是不知道为什么会这样。这是因为最近我在创建brew ( 我的shell脚本brew install node)的过程中弄乱了一些东西吗?我的问题得到解决是件好事,但我不知道是什么引起了问题,这让我很不高兴。还能有人帮忙告诉我出了什么问题吗?

  • 为什么语法被改变了?
  • 为什么路径数组在args列表中排在第四位?
  • 我怎样才能在将来避免这种情况呢?
  • 如果有人决定增加第5,第6 arg呢?

那是因为依赖版本错配吗?现在我很担心将来也会发生这种事.

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40445429

复制
相关文章

相似问题

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