【发布时间】:2018-10-12 10:31:56
【问题描述】:
我想使用传单在一个简单的本地网站上加载自定义地图。
目前我正在使用 Node Js、Express、EJS(作为模板引擎),但我似乎无法使用传单。我也尝试过使用 browserify 并导入 bundle.js 脚本,但仍然没有成功。
知道我该怎么做吗?
//map.js
var map = L.map("map-panel");
var osmUrl = 'http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png';
var osmAttrib = 'Map data © <a href="http://openstreetmap.org">OpenStreetMap</a> contributors';
var mapLayer = new L.TileLayer(osmUrl, {minZoom: 8, maxZoom: 20, attribution: osmAttrib });
map.addLayer(mapLayer).fitWorld();
//map.setView([location.lat, location.lon], 13);
<!DOCTYPE>
<html lang="en">
<head>
<meta charset="utf-8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Map</title>
<link rel="stylesheet" type="text/css" href="css/style.css"/>
<link rel="stylesheet" href="./../node_modules/leaflet/dist/leaflet.css" />
</head>
<body>
<div id="map-panel">
</div>
<!-- <script src="bundle.js"></script> -->
<script src="/js/map_panel.js"></script>
</body>
</html>
根据导入,我在 app.js 或 map.js 中都尝试过var L = require('leaflet');
或在控制器中 var L = require('leaflet');
我曾经得到这个 ReferenceError: L is not defined。该行是指第一个js行。
现在我尝试使用 browserify,但出现“未定义窗口”错误。 我正在尝试遵循本教程http://mappingandco.com/blog/leaflet-with-browserify-basic-tutorial/
感谢您的帮助或建议!
【问题讨论】:
-
开始的地方是发布您尝试过的代码,以及尝试时发生的情况(错误消息和其他输出。)请参阅此链接:stackoverflow.com/help/mcve
-
谢谢你,马特,我以为没有必要,但现在我添加了它们。
-
我看不到
leaflet.js正在加载 - 这说明L未定义。
标签: javascript node.js webpack browserify require