如何在requirejs中添加带有子依赖项的AMD/遗留依赖项(传单)
我安装了一个名为传单的AMD模块,并成功地将其用作“L”。 接下来,我需要一个名为palicate.draw的插件,但我对依赖项感到困惑。考虑下面的代码:如何在requirejs中添加带有子依赖项的AMD/遗留依赖项(传单),requirejs,leaflet,Requirejs,Leaflet,我安装了一个名为传单的AMD模块,并成功地将其用作“L”。 接下来,我需要一个名为palicate.draw的插件,但我对依赖项感到困惑。考虑下面的代码: requirejs.config({ baseUrl: 'bower_components', paths: { leaflet: 'leaflet/dist/leaflet-src', leafletdraw: 'leaflet-draw/dist/leaflet.draw-src'
requirejs.config({
baseUrl: 'bower_components',
paths: {
leaflet: 'leaflet/dist/leaflet-src',
leafletdraw: 'leaflet-draw/dist/leaflet.draw-src'
...
requirejs(["leaflet", "leafletdraw"], function(L, leafletdraw) {
var map = new L.Map('map');
...
这给出了一个referenceError:L未在传单.draw.js:4中定义。所以我想它需要传单(L)作为附属品,对吗?然后我尝试将其添加到垫片配置中:
shim: {
leafletdraw: {
deps: 'leaflet'
}
}
这将导致“无效的require调用”。所以我的问题是:如何正确地要求一个带有子依赖项的插件
- 模块安装有“bower安装说明书”和“bower安装说明书” 分别安装“图纸”传单。但我不确定传单是否有吸引力 是否启用AMD。为什么回购文件中没有说明这一点?我可以假设吗 默认情况下是否启用
- 这就是我试图实现的目标: ,但有requirejs
requirejs.config({
baseUrl: 'bower_components',
paths: {
jquery: 'jquery/dist/jquery.min',
leaflet: 'http://cdn.leafletjs.com/leaflet-0.7.3/leaflet',
'leaflet-draw': 'http://cdn.osmbuildings.org/Leaflet.draw/0.2.0/leaflet.draw',
OSMBuildings: ['http://cdn.osmbuildings.org/OSMBuildings-Leaflet']
},
shim: {
leaflet: {
exports: 'L'
},
'leaflet-draw': {
deps: ['leaflet']
},
OSMBuildings: {
deps: ['leaflet'],
exports: 'OSMBuildings'
}
}
});
requirejs(["jquery", "leaflet", "leaflet-draw", "OSMBuildings"], function($, L, dummy, OSMBuildings) {
var map = new L.Map('map');