gpt4 book ai didi

javascript - 如何将 PHP 数据发送到 Laravel 中的 Javascript 文件(Google map API)

转载 作者:行者123 更新时间:2023-11-30 14:25:17 25 4
gpt4 key购买 nike

由于页面 View 中的 javascript,我在 Laravel 中的页面速度有问题。

我试图通过在页面 View 上不使用任何 javascript 而是在单独的 search.js 文件中来提高我的页面速度。

我用谷歌地图生成了一张 map ,并在 map 上放置了大约 100 个标记。取决于标记放置位置的数据存储在 MySQL 数据库中(作为用户信息的一部分)。

现在我在页面上的 foreach 循环中为传递给 View 的每个用户设置了一个脚本。这使得页面源代码非常长,因为它循环了 100 次并在源代码中显示了所有这些 javascript。

下面只是我的代码示例,以了解我的意思,显示了整个代码 here .

<script>
@foreach($usersall as $user)
...

var latlng{{ $user->id }} = {lat: {{ $user->lat }} , lng: {{ $user->long }} };

var marker{{ $user->id }} = new google.maps.Marker({
map: map,
clickable : true,
icon: '/assets/img/pin_marker_open.png',
position: latlng{{ $user->id }}
});

markers.push(marker{{ $user->id }});

...
@endforeach
</script>

我不能在我的 search.js 文件中这样做,因为我没有来自 $usersall 的数据。

我的问题来了: 如何将用户的 PHP 变量传递给 search.js 文件,这样我就可以在 map 上显示所有标记而无需任何页面 View 本身中的 javascript?

最佳答案

这不是最好的方法,但它是最直接的:

<script>
var users = {{ $usersall }};
</script>

集合的默认输出(回显时)将转换为 JSON 字符串。因此,您可以直接将其分配给 JS 中的变量。

但是,理想情况下,您应该通过 AJAX 检索此值并将其单独传递到函数中。

关于javascript - 如何将 PHP 数据发送到 Laravel 中的 Javascript 文件(Google map API),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52045798/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com