我正在从Google Maps表单提交中保存经度和纬度,我试图使用这样的旧版本保存验证失败时的经度和纬度。
map.setCenter({ lat:{{old('lat')}}, lng:{{old('lng')}} });
这给了我...
InvalidValueError: setCenter: not a LatLng or LatLngLiteral: in property lat: not a number
当我检查源我可以看到,经度和纬度都正确返回,但谷歌地图并不将他们视为一个数字。
我需要先将它们转换为整数吗?
答案 0 :(得分:0)
尝试使用“ {!! old('lat')!!}”和“ {!! old('lng')!!}”。
我想您的值会被这样的引号引起来:
map.setCenter({ lat:"12345", lng:"54321" });
Blade这样做是为了“保护”内容。
使用双爆炸语法使它可以打印原始数据。
换句话说,它应该看起来像这样:
map.setCenter({ lat:12345, lng:54321 });
请注意,此示例中没有引号。
还要确保在传递这些值的控制器中,将这些值强制转换为整数。它将确保模板确实以整数形式接收值。