ESLINT:no-unused-vars,流条件管道用例

时间:2016-09-30 09:05:47

标签: javascript variable-assignment chaining eslint

所以我有以下功能:

function buildJavaScript(file) {
    var manifestRoot,
        stream;

    validateManifestSection(file.manifest, 'javascript');

    if (file.manifest.javascript.disabled) {
        return;
    }

    manifestRoot = path.dirname(file.path);
    stream = gulp.src(path.join(manifestRoot, file.manifest.javascript.src))
        .pipe(gulpBrowserify())
        .pipe(gulpRename(file.manifest.javascript.dest));

    if (file.manifest.javascript.minify) {
        stream = stream.pipe(gulpUglify());
    }

    stream = stream.pipe(gulp.dest(manifestRoot));
}

其目的是gulp任务的一部分,接收表示清单文件的对象,然后browserifies并有条件地uglifies

现在,当我在ESLint时,我收到以下错误:

error no-unused-vars : 'stream' is defined but never used.

注意:我没有对lint我的构建文件进行常规练习,这是测试linter的一部分,它的行为引起了我的注意。

我知道你需要的不仅仅是为了让它得到满足这是一件好事,否则它很容易被愚弄。

然而,在上面的实例中,变量是一个流,并且赋值和链接足以保证使用,如何使ESLint变得快乐?

或者我做错了,这不是你有条件管道流的意思吗?

我知道如果我要返回stream或将其传递给另一种方法,它会使得它更令人讨厌,但这似乎不对,我不需要将它返回其他地方使用。

感谢您提供任何帮助或见解。

编辑:

在尝试查明问题时,我已将方法减少到以下仍存在问题:

function buildJavaScript(file) {
    var stream;

    stream = gulp
        .src(path.join('', file.manifest.javascript.src))
        .pipe(gulpBrowserify())
        .pipe(gulpRename(file.manifest.javascript.dest));

    if (file.manifest.javascript.minify) {
        stream = stream.pipe(gulpUglify());
    }
}

我可以理解它的推理,从技术上讲,我所做的只是分配,而不是在其他地方消费,但它的分配环境意味着变量正被使用。

0 个答案:

没有答案