#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. вы закрыли файл? } отсутствует в конце.