我添加了所有必需的脚本config.js,其中包含我的API_KEY,但是它一直告诉我“ Uncaught SyntaxError:Unexpected token”。我已经多次检查了我的api密钥,这似乎是正确的。
这是我的python文件
app.route("/")
def index():
"""Return the homepage."""
return render_template("index.html", cities=cities, aqi=aqi, CO=CO, NO2=NO2, SO2=SO2, PM25=pm25)
if __name__ == "__main__":
app.run()
城市,aqi等...是我要发送到index.html的列表
index.html:
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Air-Quality</title>
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css">
<link rel="stylesheet" href="../static/css/style.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/d3/5.9.2/d3.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/leaflet/1.5.1/leaflet.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/leaflet/1.5.1/leaflet.css"></script>
<!-- My on scrape for lists -->
<!-- Sending lists to JS from python -->
<script>
var cities = {{cities|tojson}};
var aqi = {{aqi|tojson}};
var CO = {{CO|tojson}};
var NO2 = {{NO2|tojson}};
var SO2 = {{SO2|tojson}};
var PM25 = {{PM25|tojson}};
</script>
</head>
<body>
<div class="text-center main globe">
</div>
和正在调用传单的javascript代码
var myMap = L.map('globe', {
center:[45.5017, -73.5673],
zoom:1
});
L.tileLayer("https://api.tiles.mapbox.com/v4/{id}/{z}/{x}/{y}.png?access_token={accessToken}", {
maxZoom: 18,
id: "mapbox.streets-basic",
accessToken: API_KEY
}).addTo(myMap);
文件路径都是正确的。我对自己做错了很好奇。预先感谢。
完全错误:
leaflet.css:3 Uncaught SyntaxError: Unexpected token .
leaflet.js:5 Uncaught Error: Map container not found.
at i._initContainer (leaflet.js:5)
at initialize (leaflet.js:5)
at new i (leaflet.js:5)
at Object.t.map (leaflet.js:5)
at draw_globe.js:3
答案 0 :(得分:2)
请注意错误。它说意外令牌出现在第3行的leaflet.css
中。这里的问题是,您试图将CSS文件加载为javascript。那是行不通的。您需要使用<link>
标签来指示样式表。所以代替:
<script src="https://cdnjs.cloudflare.com/ajax/libs/leaflet/1.5.1/leaflet.css"></script>
您应该这样做:
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/leaflet/1.5.1/leaflet.css">
请注意,URL以.css
而不是.js
结尾(这就是为什么需要以这种方式包含它的原因)。以.js
结尾的内容应该像使用{p1>}一样使用{>
<script>