首页 > 解决方案 > Mapbox getDirections 错误:值必须是对象

问题描述

我正在尝试在 React Native 应用程序中的地图上添加方向。

我遵循了本教程:https ://blog.mapbox.com/adding-directions-to-the-react-native-store-locator-kit-ade759bd824e

问题是我在使用 请求方向时收到“错误:值必须是对象” mbDirections.getDirections。有谁知道接收和存储方向的正确方法?

谢谢!

这是我正在尝试的:

const Directions = require('@mapbox/mapbox-sdk/services/directions');
const mbDirections = Directions({ accessToken: 'my token' });

async fetchDirections (origin, destination) {

const originLatLng = {
  latitude: origin[1],
  longitude: origin[0],
};

const destLatLng = {
  latitude: destination[1],
  longitude: destination[0],
};

const requestOptions = {
  geometry: 'polyline',
};

let res = null;
try {
  res = await mbDirections.getDirections([
    originLatLng,
    destLatLng,
  ], requestOptions);
} catch (e) {
  console.log(e);
}

if (res !== null) {
  const directions = res.entity.routes[0];
  this.setState({ directions: directions });
}
}

标签: react-nativemapboxdirections

解决方案


嗨试试这个,让我知道

try {
  res = await mbDirections.getDirections([
      { latitude: origin[1], longitude: origin[0]},
      { latitude: destination[1], longitude: destination[0]},
    ], {  geometry: 'polyline'});
} catch (e) {
  console.log(e);
}

推荐阅读