Angular Google Maps API

#angular #laravel #api #google-maps

#angular #laravel #API #google-карты

Вопрос:

Добрый день! у меня есть проект angular, в котором есть карта Google. я хочу разместить маркер на своей карте Google, используя данные из моего api.

это мой код из home.component.ts в angular:

 export class HomeComponent implements OnInit {
  lat: string = '';
  lng: string = '';
  location: Object;

  constructor(private data: DataService) { }

  ngOnInit() {
    this.data.getLocation().subscribe( data => {
      this.location = data
      console.log(data)
      this.lat = data.latitude;
      this.lng = data.longitude; 
      }
    );
  }
  

он может размещать маркер из api, который имеет один объект, подобный этому:

 {
    "country": "US",
    "country_name": "United States",
    "continent_code": "NA",
    "in_eu": false,
    "postal": "94035",
    "latitude": 37.386,
    "longitude": -122.0838,
}
  

он может отображать широту и долготу на карте Google.
НО когда я использую свой api, он не может получить широту и долготу внутри моего api, потому что он находится внутри массива, подобного этому:

 [
    {
        "bridge_id": 2147483647,
        "bridge_name": "DASAD",
        "bridge_description": "Concrete",
        "bridge_region": "NCR",
        "latitude": "14.5905",
        "longitude": "120.9781",
        "created_at": "2019-02-13 07:17:31",
        "updated_at": "2019-02-13 07:17:31"
    }
]
  

Мне действительно нужно получить широту и долготу из моего api внутри массива. буду признателен за любую помощь. Спасибо!

Комментарии:

1. Вы можете воспользоваться помощью из этого therichpost.com/angular-7-google-maps-working-example

2. я кое-что пробовал, но это не сработало

3. вы проверили ссылку выше?

4. Я в основном разработчик Angular

5. я новичок в angular. я только начал несколько дней назад. я действительно ничего не понимаю из приведенной ссылки. в качестве серверной части у меня есть проект laravel, который предоставляет данные json с использованием Restful API. кажется, я не могу вызвать координаты внутри массива данных json. но если есть только один объект, я могу назвать координаты.

Ответ №1:

Попробуйте, как показано ниже :

  ngOnInit() {
    this.data.getLocation().subscribe( data => {
      this.location = data[0].
      console.log(data)
      this.lat = this.location.latitude;
      this.lng = this.location.longitude; 
      }
    );
  }
  

Комментарии:

1. src/ app /home/home.component.ts(59,1): ошибка TS1128: ожидаемое объявление или оператор.

2. вы закрыли файл? } отсутствует в конце.