首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不能让jscs在原始文件上编写固定的文件。

不能让jscs在原始文件上编写固定的文件。
EN

Stack Overflow用户
提问于 2015-09-14 21:21:25
回答 1查看 192关注 0票数 2

使用以下任务运行gulp插件来分析我的代码没有问题。但是,当我添加fix:true时,文件中没有任何更改,而且JSCS现在表现为它根本不运行.当我删除传递给JSCS插件的对象并删除gulp.dest()行时,它将报告代码样式问题。

因此,似乎是通过传入fix:true或绑定回写固定文件导致JSCS内部短路.想法?

代码语言:javascript
复制
var $ = require('gulp-load-plugins')({lazy: true});
gulp.task('vet', function () {
  log('Analyzing source with JSHint and JSCS');

  return gulp
    .src(config.allJs, {base: './'})
    .pipe($.jshint())
    .pipe($.jshint.reporter('jshint-stylish', {verbose: true}))
    .pipe($.jscs({fix:true}))
    .pipe(gulp.dest('./'));
});
EN

回答 1

Stack Overflow用户

发布于 2016-03-11 04:59:46

更新2

我找到了一种更简单/更简洁的方法,只需指定基参数即可。

代码语言:javascript
复制
gulp.src(files, {base: './'})

然后,file.name将包含完整的路径,以便可以输出到当前目录。

代码语言:javascript
复制
gulp.dest('.')

所以在最后:

代码语言:javascript
复制
gulp.src(files, {base: './'})
    .pipe(jscs({fix: true}))
    .pipe(jscs.reporter())
    .pipe(jscs.reporter('fail'))
    .pipe(gulp.dest('.'))
    .on('error', console.error.bind(console));

更新1

我一直在用这段代码来解决这个问题:

代码语言:javascript
复制
var gulp = require('gulp');
var jscs = require('gulp-jscs');
var foreach = require('gulp-foreach');
var rimraf = require('gulp-rimraf');

gulp.task('jscs', () => {
return gulp.src(['file1.js', 'file2.js'])
    .pipe(foreach((stream, file) => {
        return stream
            .pipe(jscs({ fix: true }))
            .pipe(jscs.reporter())
            //.pipe(jscs.reporter('fail'))
            .pipe(rimraf())
            .pipe(gulp.dest(file.base));
    }));
});

依赖关系:

代码语言:javascript
复制
npm install --save-dev gulp gulp-rimraf gulp-foreach gulp-jscs

在全球范围内,gulp使用自己的流遍历每个src,rimraf在编写vinyl.base目标之前删除文件。

如果有帮助请告诉我。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32574139

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档