Pular para o conteúdo principal

parameter_assignments

Saiba mais sobre a regra de lint parameter_assignments.

Estável

Não reatribua referências a parâmetros de funções ou métodos.

Detalhes

#

NÃO FAÇA atribuir novos valores a parâmetros de métodos ou funções.

Atribuir novos valores a parâmetros é geralmente uma má prática, a menos que um operador como ??= seja usado. Caso contrário, reatribuir parâmetros arbitrariamente costuma ser um erro.

RUIM:

dart
void badFunction(int parameter) { // LINT
  parameter = 4;
}

RUIM:

dart
void badFunction(int parameter, {int? optional = 42}) { // LINT
  optional ??= 8;
}

RUIM:

dart
void badFunctionPositional(int parameter, [int? optional = 42]) { // LINT
  optional ??= 8;
}

RUIM:

dart
class A {
  void badMethod(int parameter) { // LINT
    parameter = 4;
  }
}

BOM:

dart
void ok(String parameter) {
  print(parameter);
}

BOM:

dart
void actuallyGood(int parameter, {int? optional}) { // OK
  optional ??= 42;
}

BOM:

dart
void actuallyGoodPositional(int parameter, [int? optional]) { // OK
  optional ??= 42;
}

BOM:

dart
class A {
  void ok(String parameter) {
    print(parameter);
  }
}

Ativar

#

Para ativar a regra parameter_assignments, adicione parameter_assignments em linter > rules no seu arquivo analysis_options.yaml:

analysis_options.yaml
yaml
linter:
  rules:
    - parameter_assignments

Se você usa a sintaxe de mapa YAML para configurar as regras de lint, adicione parameter_assignments: true em linter > rules:

analysis_options.yaml
yaml
linter:
  rules:
    parameter_assignments: true

Encontrou essa página sem tradução ou que precisa de correção? Abra uma issue e nos ajude a manter esse site em PT-BR para ajudar pessoas como você.