You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Cols Steele Yelp Camp项目:集群地图无法显示露营地求助

修复Yelp Camp集群地图显示问题

错误1:Uncaught SyntaxError: Unexpected token '&'

这个问题是因为JSON.stringify(campgrounds)的输出被HTML自动转义了(比如双引号变成了"),导致JS无法正确解析JSON。解决方法是使用EJS的不转义输出语法:
把模板中的<%= %>替换成<%- %>,直接输出原始JSON内容:

<script>
        const mapToken = '<%=process.env.MAPBOX_TOKEN%>';
        const campgrounds = { features: <%- JSON.stringify(campgrounds) %>};
</script>

错误2:Uncaught ReferenceError: mapToken is not defined

从两个方向排查修复:

  • 环境变量未正确加载:确认项目根目录存在.env文件,且文件内正确配置了MAPBOX_TOKEN=你的Mapbox密钥;同时在服务器入口文件(如app.js)顶部添加环境变量加载代码:
require('dotenv').config();
  • 模板输出语法问题:检查process.env.MAPBOX_TOKEN的输出是否正常,确保EJS的<%= %>语法正确渲染了变量,没有拼写错误。如果密钥包含特殊字符,单引号包裹的写法是安全的,无需额外转义。

额外注意事项

确保clusterMap.js的加载顺序在上述<script>代码之后,否则会因提前执行导致变量未定义。如果无法调整加载顺序,可以在clusterMap.js中用DOM加载事件包裹代码:

document.addEventListener('DOMContentLoaded', () => {
  // 原clusterMap.js中的地图初始化代码
});

内容的提问来源于stack exchange,提问作者Kirill

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 11:57:01