Gulp: SyntaxError: Unexpected end of JSON input
Gulp: SyntaxError: Unexpected end of JSON input
我有一个 AngularJS 应用程序,为此我使用了 bower、npm 和 gulp。这段代码几天前就可以工作了,不知道为什么,但是当我执行 gulp 命令时,我得到了以下信息:
gulp minifycss;
错误:
SyntaxError: Unexpected end of JSON input
at Object.parse (native)
at module.exports (..\node_modules\main-bower-files\lib\index.js:48:43)
at Gulp.<anonymous> (..\gulpfile.js:72:33)
at module.exports (..\node_modules\orchestrator\lib\runTask.js:34:7)
at Gulp.Orchestrator._runTask (..\node_modules\orchestrator\index.js:273:3)
at Gulp.Orchestrator._runStep (..\node_modules\orchestrator\index.js:214:10)
at Gulp.Orchestrator.start (..\node_modules\orchestrator\index.js:134:8)
at C:\Users\bgi5\AppData\Roaming\npm\node_modules\gulp\bin\gulp.js:129:20
at _combinedTickCallback (internal/process/next_tick.js:73:7)
at process._tickCallback (internal/process/next_tick.js:104:9)
Gulp代码:
var cleanCss = require('gulp-clean-css'),
filter = require('gulp-filter'),
concat = require('gulp-concat'),
merge = require('merge-stream'),
bowerFiles = require('main-bower-files');
var config = {
paths: {
src: './src',
build: './build',
bower: './bower_components'
}
};
gulp.task('minifyCss', function () {
var v= gulp.src(bowerFiles())
.pipe(filter(['**/*.css']))
.pipe(concat('v.css'))
.pipe(cleanCss({debug: true}))
.pipe(gulp.dest(config.paths.build + '/styles'));
var a= gulp.src(config.paths.src + '/**/*.css')
.pipe(concat('a.css'))
.pipe(cleanCss({debug: true}))
.pipe(gulp.dest(config.paths.build + '/styles'));
return merge(v, a);
});
这是由您的代码中的变量 bowerFiles 引起的。
bowerFiles = require('main-bower-files');
出于某种原因,它没有从您安装的 bower 包中找到所需的 css 文件。由于错误说明了 JSON,我猜你的 Bower 配置文件 .bowerrc 有问题。仔细检查它指向的 bower 目录是否正确。查看此 link 以获取有关 .bowerrc 文件的更多信息。
我有一个 AngularJS 应用程序,为此我使用了 bower、npm 和 gulp。这段代码几天前就可以工作了,不知道为什么,但是当我执行 gulp 命令时,我得到了以下信息:
gulp minifycss;
错误:
SyntaxError: Unexpected end of JSON input
at Object.parse (native)
at module.exports (..\node_modules\main-bower-files\lib\index.js:48:43)
at Gulp.<anonymous> (..\gulpfile.js:72:33)
at module.exports (..\node_modules\orchestrator\lib\runTask.js:34:7)
at Gulp.Orchestrator._runTask (..\node_modules\orchestrator\index.js:273:3)
at Gulp.Orchestrator._runStep (..\node_modules\orchestrator\index.js:214:10)
at Gulp.Orchestrator.start (..\node_modules\orchestrator\index.js:134:8)
at C:\Users\bgi5\AppData\Roaming\npm\node_modules\gulp\bin\gulp.js:129:20
at _combinedTickCallback (internal/process/next_tick.js:73:7)
at process._tickCallback (internal/process/next_tick.js:104:9)
Gulp代码:
var cleanCss = require('gulp-clean-css'),
filter = require('gulp-filter'),
concat = require('gulp-concat'),
merge = require('merge-stream'),
bowerFiles = require('main-bower-files');
var config = {
paths: {
src: './src',
build: './build',
bower: './bower_components'
}
};
gulp.task('minifyCss', function () {
var v= gulp.src(bowerFiles())
.pipe(filter(['**/*.css']))
.pipe(concat('v.css'))
.pipe(cleanCss({debug: true}))
.pipe(gulp.dest(config.paths.build + '/styles'));
var a= gulp.src(config.paths.src + '/**/*.css')
.pipe(concat('a.css'))
.pipe(cleanCss({debug: true}))
.pipe(gulp.dest(config.paths.build + '/styles'));
return merge(v, a);
});
这是由您的代码中的变量 bowerFiles 引起的。
bowerFiles = require('main-bower-files');
出于某种原因,它没有从您安装的 bower 包中找到所需的 css 文件。由于错误说明了 JSON,我猜你的 Bower 配置文件 .bowerrc 有问题。仔细检查它指向的 bower 目录是否正确。查看此 link 以获取有关 .bowerrc 文件的更多信息。