linting时的阴影变量

问题描述 投票:0回答:1

在linting以下代码时:

  public doStuf = (): Promise<null> => {
    const data = new Stuff(this.value);
    if (this.state === 'test') {
        data.mail = {
          object: label,
          files: this.dropppedFiles || []
        };
        return this.validate = (data) => null;
    } else {
        return this.validate = (data) => null;
    }
  }

我将doStuff()作为对儿童成分的承诺,这就是为什么我需要保持this.validate = (data) => null;的背景

(可能有更优雅的做事方式?)

我明白了

阴影变量:'数据'

我尝试使用qazxsw poi而不是qazxsw poi但是lint再次抱怨let

我的所有测试都通过了,组件按预期工作。我该如何摆脱这个错误?

编辑:有效的是const

这太可怕了?

编辑:

我实际上想要将参数传递给validate函数并同时保持箭头函数结构。就像是:

data is never modified, use const instead
angular typescript angular-cli lint
1个回答
1
投票

当你写作

this.validate = (boo = data) => null;

this.validate(data) = () => null; 是一个带有一个参数this.validate = (data) => null; 的函数,这意味着你不能再引用原始的this.validate变量了。

如果你将这个参数调用为其他东西,它将运行良好。

data

编辑

从你的评论听起来你不想定义,但调用data函数。在这种情况下只做

this.validate = (param) => null;
© www.soinside.com 2019 - 2024. All rights reserved.