かもメモ

自分の落ちた落とし穴に何度も落ちる人のメモ帳

Gulp4 gulpコマンドでgulpInst.start.apply(gulpInst, toRun); Cannot read property 'apply' of undefinedで動かなくなった

久々にnpm installしてgulpを動かそうとしたところ

$ gulp
[08:46:54] Using gulpfile ~/Documents/local/gulpfile.js
/.nodebrew/node/v6.9.2/lib/node_modules/gulp/bin/gulp.js:129
    gulpInst.start.apply(gulpInst, toRun);
                   ^
TypeError: Cannot read property 'apply' of undefined

というエラーが表示されてgulpが動かなくなってしまいました。
gulpのヴァージョンが4.0になってglobalにインストールされていたgulp-cliのヴァージョンが合わなくてエラーになっているようでした。

npm install gulp@nextとしないとv4は入らないという記事を見たのですが、もうnpm install gulpでv4系が入ってしまうかも知れません...

解決方法 gulp-cli をインストールしなおす

npm i -g gulp-cli

ただ、

グローバルにgulp-cliを入れなくて済みます。
メモ: gulp-cliは、gulpの依存性として、ローカルのnode_modulesにインストールされています。
[出典]: 帰ってきたGulp 4

ということらしいので、globalのgulp-cliは削除してしまってもよいのかも知れません。
(個人的にはnode_modules がすぐ巨大になっていく問題をどうにかして欲しいのん...


[参考]

Webデザイナーの仕事を楽にする! gulpではじめるWeb制作ワークフロー入門

Webデザイナーの仕事を楽にする! gulpではじめるWeb制作ワークフロー入門

👆 2018/5/29 出版のgulpの本。なか見!見た感じだとv4対応っぽい