我尝试设置Gulp来编译SCSS文件,并在流程中重命名SCSS文件 - 例如:
我希望 SCSS / original.scss 保存为 CSS / new.css
这是在Windows 10 VM上
我已经安装了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任务时,这是我收到的错误消息:
错误:无法找到模块&gulp-rename' 在Function.Module._resolveFilename(module.js:469:15) 在Function.Module._load(module.js:417:25) 在Module.require(module.js:497:17) at require(internal / module.js:20:19) 在对象。 (C:\项目\ VAT-专家\ 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)
我无法理解我在这里做错了什么,想想我已经在这里添加了所有相关信息 - 非常感谢任何关于我可以尝试的指导或建议这一个!
<磷>氮答案 0 :(得分:15)
首先,确保在package.json
或dependencies
下的devDependencies
中列出了gulp-rename。然后运行:
npm uninstall -g gulp
npm install -g gulp
rm -rf node_modules
npm install
然后再检查一下。
答案 1 :(得分:3)
从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/'))
}
答案 2 :(得分:0)
我知道这已经得到了回答,但我将此作为 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');