web-dev-qa-db-fra.com

Pourquoi est-ce que je reçois "l'utilisation inattendue de" location "sans limites" globaux "?

Dans mon code de réactjs, j'ai eu:

const {
  children,
  location: { pathname },
} = this.props;

let path = location.pathname;

Utilisez également le module de routeur réactif dans ce composant. Comment réparer cette erreur?

7
bier hier

Vous devriez essayer ce code

const {
  children,
  location: { pathname },
} = this.props;

let path = pathname;

Votre variable location n'a pas été définie dans ce code de bloc, donc eslint pense que vous utilisez une variable globale

3
Anh Nguyen

Parce que eslint détecté location est un élément de window. Alors, essayez de renommer votre props:

const {
  children,
  myLocation: { pathname },
} = this.props;

let path = myLocation.pathname;

Référence:

0
Hai Pham