我正在努力尝试在Javascript中导入一个类(位于leaflet-m2t.js
文件中)是否有错误不断被抛出m2t未定义。文件导入得很好,错误不在文件中,而是在我的代码中。我很感激在解决这个问题方面提供了一些帮助
require('./leaflet-m2t.js')
$scope.tileProvider = new m2t.tileProvider({
map: map,
tileUrl: '/m2t',
defaultLayer: 'Dark',
tileLayers: [],
outlineLayers: ['Light', {
name: 'Dark',
style: {
"color": "#737373",
"weight": 1,
"fillOpacity": 1,
"fillColor": "#0d0d0d",
'backgroundColor': '#242425',
'clickable': false
}
}]
});
答案 0 :(得分:2)
var m2t = require('./leaflet-m2t.js').default;
与Java不同,您应该定义要导入的内容,在本例中是传单的默认导出。 JavaScript并不神奇地知道你所指的是什么,这只适用于全局变量。
如果传单使用es6导出,则需要执行以下操作:
import m2t from './leaflet-m2t.js';
或者,如果您的应用已配置为处理es6导入:
flatMap
答案 1 :(得分:1)
好的,所以这个问题的解决方案恰好是使用require
语句通过Javascript导入类,我不得不通过HTML标签<script src="./leaflet-m2t.js"></script>