gulp和node版本冲突解决

405 阅读1分钟

1,百度过这个问题一般让你去下载低版本node或者升级gulp,利用nvm对node进行版本控制,但是一般情况下还是会报错的,这个时候看下自己下包的镜像地址是否是淘宝,最好用cnpm,node-sass也需要对应的版本 当使用nvm安装低版本时,可能会报错 列如

Both the `sass` and `node-sass` packages are permitted.

如果使用gulp4,当我们通过淘镜像或npm i install gulp去下载gulp-sass时,当我们去执行gulp sassHandler任务时会发生如下错误

cant fant node sass 或者 gulp-sass

我这边mac本亲测有用

首先出现这种问题的原因node版本过高,gulp版本低,升级gulp版本还是会有错的,我这边没测试, 我使用的方法是将低node版本,首先看自己的gulp版本,一般来说node版本v11.15.0兼容低版本gulp

1.使用nvm

下载nvm并且安装 使用 nvm ls 查看目前所用的的node版本,

nvm i v11.15.0 下载v11.15.0版本node

nvm use v11.15.0 使用当前版本node

2.最好使用cnpm

npm i cnpm -g 当然也可以不用

  1. cnpm i
  2. gulp 启动下 看是否报错。--基本会爆sass缺失什么的
  3. cnpm install sass gulp-sass --save-dev
  4. 运行完上面的在gulpfile.js中修改 sass var sass = require ( 'gulp-sass' ) ( require ( 'sass' ) ) ;

以上就是解决的过程。。原理不知道,有知道的可以留言教教小弟