Dans mon React j'utilise le guide de style eslint d'Airbnb qui générera une erreur si je n'utilise pas la destruction.
Dans la situation ci-dessous, j'utilise d'abord let
pour affecter les deux variables latitude
et longitude
aux coordonnées du premier élément d'un tableau d'objets de localisation. Ensuite, j'essaie d'utiliser la déstructuration pour réaffecter leurs valeurs si l'utilisateur m'a donné accès à leur emplacement.
let latitude = locations[0].coordinates[1];
let longitude = locations[0].coordinates[0];
if (props.userLocation.coords) {
// doesn't work - unexpected token
{ latitude, longitude } = props.userLocation.coords;
// causes linting errors
// latitude = props.userLocation.coords.latitude;
// longitude = props.userLocation.coords.longitude;
}
La déstructuration à l'intérieur de l'instruction if
provoque un unexpected token
Erreur.
Réaffecter les variables à l'ancienne provoque un ESlint: Use object destructuring
Erreur.
({ latitude, longitude } = props.userLocation.coords);
La destruction doit se faire soit après une déclaration let
, const
ou var
, soit dans un contexte d'expression pour la distinguer d'une instruction de bloc.