Warum wird mein Status nicht auf die Variable lat gesetzt?
let lon, lat;
let weather;
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(function(position) {
lat = position.coords.latitude;
lon = position.coords.longitude;
console.log(typeof lat)
});
}
class Button extends React.Component{
state = {latt: lat}
\t \t render(){
\t \t \t return(
\t \t <div>
{this.state.latt}
<h1>ss</h1>
</div>
\t \t \t
)}}
class Appp extends React.Component {
\t render(){
\t \t return(
\t \t \t <Button />
\t \t)}
\t }
ReactDOM.render(<Appp />, mountNode)
Wenn ich die Variable console.log ich eine Nummer bekommen, aber warum kann ich es als ein Wert im Zustand verwenden. Selbst wenn man es in ein Array setzt, macht das keinen Unterschied.
Bitte fügen Sie den entsprechenden Code auf Ihre Fragen. Das Arbeiten mit externen Bildern ist schwierig. –
Können Sie Ihren Code hier veröffentlichen, um beim Debuggen zu helfen? – Rowland
Ihr lat, lon kann nicht gefüllt werden, wenn die Klasse aufgerufen wird, da 'getCurrentPosition' nicht synchron ist. Stattdessen sollten Sie diesen Code in der Komponente verschieben und 'setState' verwenden, um lat und long festzulegen. – Panther