[英]Gulp - Cannot find module 'gulp-rename'
我试图设置 Gulp 来编译 SCSS 文件并在此过程中重命名 SCSS 文件 - 例如:
我希望将SCSS/original.scss保存为CSS/new.css
这是在 Windows 10 虚拟机上
我安装了 Gulp,安装了 gulp-sass,一切正常
var gulp = require('gulp');
var sass = require('gulp-sass');
gulp.task('compile-new-main', function(){
return gulp.src('scss/new-main.scss')
.pipe(sass()) // Using gulp-sass
.pipe(gulp.dest('css'))
});
运行上面的 gulp 任务工作得很好但是当我尝试安装 gulp-rename 时任务中断如下:
var gulp = require('gulp');
var sass = require('gulp-sass');
var rename = require("gulp-rename");
gulp.task('compile-new-main', function(){
return gulp.src('scss/new-main.scss')
.pipe(sass()) // Using gulp-sass
.pipe(rename("styles.css"))
.pipe(gulp.dest('css'))
});
我最初尝试使用此命令安装 gulp rename
npm install gulp-rename
就像我对 gulp-sass 所做的一样,它似乎和以前一样工作得很好,显然不是,但我不确定如何或为什么。
我做了一些谷歌搜索并尝试在全球范围内安装它,这似乎再次安装正常
npm install gulp-rename -g
而且我还看到了一些将 gulp-rename 保存为开发依赖项的建议,所以我尝试了
npm install gulp-rename --save-dev
安装再次没有错误。
当我尝试运行 gulp 任务时,这是我收到的错误消息:
错误:在 Function.Module._resolveFilename (module.js:469:15) 在 Function.Module._load (module.js:417:25) 在 Module.require (module.js:497) 找不到模块 'gulp-rename' :17) 在要求 (internal/module.js:20:19) 在对象。 (C:\Projects\VAT-Expert\gulpfile.js:3:14) 在 Module._compile (module.js:570:32) 在 Object.Module._extensions..js (module.js:579:10) 在Module.load (module.js:487:32) 在 tryModuleLoad (module.js:446:12) 在 Function.Module._load (module.js:438:3)
我无法理解我在这里做错了什么,认为我已经在此处添加了所有相关信息 - 非常感谢任何关于我可以尝试的指导或建议!
否
首先,确保 gulp-rename 列在package.json
中的dependencies
或devDependencies
下。 然后运行:
npm uninstall -g gulp
npm install -g gulp
rm -rf node_modules
npm install
然后再次检查。
从 cli 安装gulp-rename
包:
npm install --save-dev gulp-rename
然后从 node_modules 导入包
const rename = require("gulp-rename");
在编译之前使用它
例子:
const miniCSS = () => {
return gulp.src('./css/*.css')
.pipe(rename('style.min.css'))
.pipe(uglifycss({
"uglyComments": true
}))
.pipe(gulp.dest('./dist/'))
}
我知道这已经得到解答,但我将其发布为 PHP 项目的另一种解决方案。
$ npm install gulp-rename
可以正常工作并安装软件包,但仍然出现Cannot find module 'gulp-rename'
错误。node_modules
中找到这个包。 不管出于什么原因,我在这个目录中没有package.json
文件。$ which gulp-rename
不会显示任何内容,但我知道它已经安装在node_modules
中。为了在这些条件下修复它,我做了:
var rename = require('../node_modules/gulp-rename/index.js');
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.