javascript - 带有 Google Maps JS API 地点详细信息的无限循环调用“open_now”
问题描述
我正在使用 Google Maps Javascript API 来获取地点详细信息。截至昨天,我一直收到此错误:
RangeError: Maximum call stack size exceeded
at Object._.Xm (common.js:1)
at Object.get [as open_now] (util.js:213)
at Object.get [as open_now] (util.js:213)
at Object.get [as open_now] (util.js:213)
at Object.get [as open_now] (util.js:213)
at Object.get [as open_now] (util.js:213)
at Object.get [as open_now] (util.js:213)
at Object.get [as open_now] (util.js:213)
at Object.get [as open_now] (util.js:213)
at Object.get [as open_now] (util.js:213)
我的代码(在打字稿中)是:
async function getGooglePlaceDetails(placeId: string, sessionToken?: string) {
const googleMapsClient = createClient({
key: config.googleMapsServerAPIKey,
Promise,
});
const response = await googleMapsClient
.place({ placeid: placeId, sessiontoken: sessionToken })
.asPromise();
return response;
}
对于某些地方,例如ChIJ71yZMAvSCl8RY1u0MpwXJXA
(“Houheikyou hot springs”),这会失败。
我该如何解决?
解决方案
此问题最近已修复。这也在谷歌的公共问题跟踪器中报告:https ://issuetracker.google.com/issues/137213536
该问题是由于最近的 Maps JavaScript API 版本 3.37 翻转造成的,Google 工程师已根据公共错误修复了该版本。
请注意,切换到旧版本是一种临时解决方法,一旦旧版本完全弃用,将不再有效。如果新版本的错误在您端仍然可以重现,您可以在上面的问题链接中发表评论,以便工程师进一步调查。
推荐阅读
- ios - appendingPathComponent 有什么问题,它是可选的吗?
- typescript - 在打字稿中使用reduce,错误“元素隐式具有'any'类型,因为类型的表达式不能用于索引类型'{}'”
- php - 具有相同路由问题的 Laravel 分组中间件
- amazon-web-services - Native AWS 中是否有用于任务管理的服务或框架?
- swift - 按比例空间定位对象
- javascript - React组件回调实现方法有什么区别
- sharepoint-2013 - 抱歉,尝试创建新列表视图时出现错误
- sql - 如何按月或按月备份数据库中的旧数据?
- javascript - 引导选项卡活动选项卡颜色
- r - 用闪亮的清除日期范围输入