我正在使用与 laravel 的反应,我调用了地理定位 API 以获取用户的当前地址并将其显示在 laravel blade 上。我想分享这些信息,特别是邮政编码,没有邮政表格,使用 laravel 控制器使用谷歌地理定位 api 并将用户位置映射到公司地址
这里是 React 中的 location.js
useEffect(() => {
if (navigator.geolocation) {
navigator.geolocation.watchPosition(function (position) {
// console.log("Latitude is :", position.coords.latitude);
// console.log("Longitude is :", position.coords.longitude);
Geocode.fromLatLng(
position.coords.latitude,
position.coords.longitude
).then(
(response) => {
const address = response.results[0].formatted_address,
city =
response.results[0].address_components[3]
.long_name,
neighborhoodName =
response.results[0].address_components[2]
.long_name,
state =
response.results[0].address_components[4]
.short_name,
fromZipcode =
response.results[0].address_components[6]
.long_name;
setCityName(`${city}/${state}`);
setNeighborhood(neighborhoodName);
setZipcode(fromZipcode);
},
(error) => {
console.error("Error", error);
}
);
});
}
}, []);
return (
<>
<span id="fromZipcode" value={zipcode}>
Você esté em {`${neighborhood} - ${cityName}`}
</span>
</>
);
这是控制器(看到我标记了我不知道该怎么做的那一行):
public function show($slug, Request $request)
{
dd(request()->get('teste', null)); // I DON'T KNOW HOW TO GET THE ZIPCODE PARAMS FROM REACT/BLADE
// dd($request->all());
$client = $this->clientRepository->getClientBySlug($slug);
$gallery = $client ? $this->clientRepository->getGalleryFromClient($client->id) : null;
return view('site.client.index')->with(compact('client', 'gallery'));
}