Javascript 如何在获取请求中传递变量
我正在使用react native并尝试理解一些示例 我有个问题 我试图在回迁中传递纬度,但我遇到了一个问题,谁说我“纬度”不存在Javascript 如何在获取请求中传递变量,javascript,reactjs,native,Javascript,Reactjs,Native,我正在使用react native并尝试理解一些示例 我有个问题 我试图在回迁中传递纬度,但我遇到了一个问题,谁说我“纬度”不存在 class App extends React.Component { constructor() { super(); this.state = { region: { latitude: LATITUDE, longitude: LONGITUDE, latitudeDelta: LATITUDE_DELTA, l
class App extends React.Component {
constructor() {
super();
this.state = {
region: {
latitude: LATITUDE,
longitude: LONGITUDE,
latitudeDelta: LATITUDE_DELTA,
longitudeDelta: LONGITUDE_DELTA,
},
markers: [],
loaded: false
}
}
componentDidMount() {
navigator.geolocation.getCurrentPosition(
(position) => {
console.log(position);
this.setState({
region: {
latitude: position.coords.latitude,
longitude: position.coords.longitude,
latitudeDelta: LATITUDE_DELTA,
longitudeDelta: LONGITUDE_DELTA,
}
});
},
(error) => this.setState({ error: error.message }),
{ enableHighAccuracy: false, timeout: 200000, maximumAge: 1000 },
);
this.getLocations()
}
getLocations(){
return fetch('https://***&geofilter.distance='+latitude+'%2C2.3883402698750875%2C2000') //here
.then(response => response.json())
.then(responseData =>{
var markers = [];
您能帮助我吗,谢谢:)在
getLocations
中,您试图使用纬度
变量,但范围中没有变量。您可能想要这个.state.region.latitude
但是,如果您试图使用this.state.region.latitude
,则需要将调用移动到componentDidMount
中的getLocations
,以便它位于状态更改完成处理程序中:
componentDidMount() {
navigator.geolocation.getCurrentPosition(
(position) => {
console.log(position);
this.setState({
region: {
latitude: position.coords.latitude,
longitude: position.coords.longitude,
latitudeDelta: LATITUDE_DELTA,
longitudeDelta: LONGITUDE_DELTA,
}
},
() => { // ***
this.getLocations(); // ***
}); // ***
},
(error) => this.setState({ error: error.message }),
{ enableHighAccuracy: false, timeout: 200000, maximumAge: 1000 },
);
// *** Not here
}
您正在州中存储纬度,因此需要将其称为
this.state.region.latitude
return fetch('https://***&geofilter.distance='+this.state.region.latitude+'%2C2.3883402698750875%2C2000')
试着像这样使用您的fetch:
return fetch('https://***&geofilter.distance='+this.state.region.latitude+'%2C2.3883402698750875%2C2000')
“我有一个说我不存在的问题”请复制并粘贴实际错误消息到问题中,并告诉我们错误所指的行。警告:失败的道具类型:道具
区域。纬度在地图视图中标记为所需,但其值为未定义的。