gpt4 book ai didi

javascript - 无效值错误: setPosition: not a LatLng or LatLngLiteral: not an Object

转载 作者:行者123 更新时间:2023-12-03 04:52:32 30 4
gpt4 key购买 nike

所以我的代码遇到了问题,我尝试从从数据库下载的变量设置谷歌街景位置。它的数据库和 php 端可以工作,但是当我尝试将其分配给“panorama.setPosition(prizeLocation);”时它给我错误“InvalidValueError:setPosition:不是 LatLng 或 LatLngLiteral:不是对象”。我已经尝试并环顾四周,但每个人都遇到 setCenter 的问题,而不是 setPosition 的问题。感谢任何帮助

谢谢

HTML 代码:

<script>
var prizeLocation;
function downloadCoords() {
$.ajax({
type: 'GET',
url: 'prizeCoordsTransformer.php',
dataType: "json",
success: function(data) {
console.log(data);
prizeLocation = data.prizeLocation;
console.log(prizeLocation);
},
error: function(data) {
console.log(data);
}
});
}
</script

(后面是脚本)

<script>
setTimeout(function() {
console.log(prizeLocation);
panorama = map.getStreetView();
panorama.setPosition(prizeLocation);
panorama.setPov({
heading: 265,
pitch: 0
});
panorama.setVisible(true);
panorama.setOptions({
fullscreen: true,
enableCloseButton: false
});
}, 2000);
</script>

PHP 代码:

<?php

ini_set('display_errors', 0);
error_reporting(E_ERROR);
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "db";

// Create connection
$conn = mysqli_connect($servername, $username, $password);
mysqli_select_db($conn, $dbname);

// Check connection
if (!$conn)
{
die("Connection failed: " . mysqli_connect_error());
}
// echo "Connected successfully";


$query = "SELECT prizeLocation FROM prizeLocation";
$result = mysqli_query($conn, $query);
$result1 = mysqli_fetch_row($result);



echo json_encode(array('prizeLocation'=>$result1[0]));

mysqli_close($conn);

?>

附注除了prizeLocation变量之外,这里的一切都运行良好。所以如果我将变量更改为“varprizeLocation={lat:-43.533476,lng:172.636581};”或者其他有用的东西

最佳答案

  1. PHP 是否设置 mime 类型 application/json

  2. console.log(prizeLocation); 是否执行?成功后打印一个字符串或一个对象 - 如果仍然是一个字符串,则执行 prizeLocation = JSON.parse(data.prizeLocation);

  3. 该对象应为{"lat": -43.533476, "lng": 172.636581}

像这样

   var pl = {"lat": -43.533476, "lng": 172.636581};
console.log(pl);

试试这个

<?PHP
header("content-type:application/Json");
$arr = array('lat' => -43.533476, 'lng' => 172.636581);
echo json_encode($arr);
?>

关于javascript - 无效值错误: setPosition: not a LatLng or LatLngLiteral: not an Object,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42592940/

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