Javascript re-assign let zmienna z destrukcji [duplikat]

to pytanie ma już odpowiedzi tutaj : destrukcja obiektów bez var (3 odpowiedzi) Zamknięty 3 lata temu.

W mojej aplikacji Reactowej używam przewodnika stylu eslint airbnb, który spowoduje błąd, jeśli nie użyję destrukcji.

W poniższej sytuacji najpierw używam let, Aby przypisać dwie zmienne latitude i longitude do współrzędnych pierwszego elementu w tablicy obiektów lokalizacji. Następnie próbuję użyć destrukcji, aby ponownie przypisać ich wartości, jeśli użytkownik dał mi dostęp do ich lokalizacji.

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;
}

Destrukcja wewnątrz if Instrukcja powoduje błąd unexpected token.

Ponowne przypisanie zmiennych w staromodny sposób powoduje błąd ESlint: Use object destructuring.

Author: Phil Mok, 2018-02-09

1 answers

 ({ latitude, longitude } = props.userLocation.coords);

Destrukcja musi być albo po let, const lub var deklaracja lub musi być w kontekście wyrażenia, aby odróżnić ją od instrukcji blokowej.

 171
Author: Jonas Wilms,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-02-09 21:59:03