Gulp:SyntaxError:JSON输入的意外结束

时间:2017-04-24 14:51:16

标签: angularjs gulp bower gulp-uglify main-bower-files

我有一个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 Code:

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);
});

1 个答案:

答案 0 :(得分:1)

这是由代码中的变量 bowerFiles 引起的。

bowerFiles = require('main-bower-files');

由于某种原因,它没有从您安装的凉亭包中找到所需的css文件。由于错误说明了JSON,我猜您的凉亭配置文件 .bowerrc 存在问题。它指向的双重检查凉亭目录是否正确。有关 .bowerrc 文件的详细信息,请查看此link