2017-08-15 134 views
1

我無法通過閱讀模塊來解決問題。錯誤:找不到模塊'gulp-sass'

最初我有一個工作系統。

我再升級到與NVM(我刪除了與啤酒第一次安裝的所有內容)

這是我現在有:

"node: v6.11.2" 
"npm: 3.10.10" 
"nvm" 

和我有一個用於工作gulpfile,但我也升級我的模塊,我已在本地在我的項目安裝:

"gulp": "^3.9.1", 
"gulp-pug": "^3.3.0", 
"gulp-sass": "^3.1.0" 

全球範圍內爲這個版本的節點我有:

[email protected] 
[email protected] 
[email protected] 

在一個簡單的gulpfile運行:gulp會成功,但引入其他模塊是我開始獲取問題的地方。

在我gulpfile我有,例如:

var gulp = require('gulp'); 

var sass = require(' gulp-sass'), 
prefixer = require('gulp-autoprefixer'), 
minifycss = require('gulp-clean-css'), 
sourcemaps = require('gulp-sourcemaps'), 
rename = require("gulp-rename"); 

gulp.task('sass', function() { 
    return gulp.src(src.sass) 
     .pipe(sourcemaps.init()) 
     .pipe(sass()) 
     .pipe(prefixer()) 
     .pipe(gulp.dest(src.css)) 
     .pipe(minifycss()) 
     .pipe(rename({suffix: '.min'})) 
     .pipe(sourcemaps.write('/maps')) 
     .pipe(gulp.dest(src.css)) 
     .pipe(connect.reload()); 
}); 

..locally運行的任何命令,像gulp sass會產生:

Error: Cannot find module ' gulp-sass' 
    at Function.Module._resolveFilename (module.js:469:15) 
    at Function.Module._load (module.js:417:25) 
    at Module.require (module.js:497:17) 
    at require (internal/module.js:20:19) 
    at Object.<anonymous> (/Users/myusername/sites/projectname/gulpfile.js:25:12) 
    at Module._compile (module.js:570:32) 
    at Object.Module._extensions..js (module.js:579:10) 
    at Module.load (module.js:487:32) 
    at tryModuleLoad (module.js:446:12) 
    at Function.Module._load (module.js:438:3) 

我已經刪除了node_modules,在包裝中取出的依賴關係。 json,重新安裝了每個本地模塊

+1

是否'/用戶/名爲myUsername /網站/項目名稱/ node_modules /吞掉-sass'存在嗎? – SLaks

+0

看起來像你在require中有一個空格('gulp-sass') – Link0352

+0

@SLaks是,gulp-sass位於: '/ Users/myusername/sites/projectname/node_modules/gulp-sass' – ChristoS

回答

1

'gulp-sass'應該是'gulp-sass'

+0

是的,但這正是終端如何用空間打印它。我保留它可能是相關的 – ChristoS

+0

這是相關的,根據您的要求,您正在使用var sass = require('gulp-sass')而不是var sass = require('gulp-sass') – Link0352

+1

好的,讓我檢查一下我認爲,所有的故障排除和升級/刪除的東西,我只是錯過了這個錯字。這個錯字花了我3個小時的時間在別處看。 – ChristoS

0

您正在爲軟件包名稱的開頭注入一個包含額外空間的軟件包。刪除空間,然後再試一次。

var sass = require(' gulp-sass'), 

應該

var sass = require('gulp-sass'), 
+0

工作,我完全錯過了。感謝您有時間查看和發佈建議。 – ChristoS