是否可以加载别名模块?

时间:2013-09-13 21:14:38

标签: module dojo alias amd

我有一个模块“default / foo / bar”和一个模块“agency / foo / bar”。我设置了一个别名来加载代理模块而不是默认模块。然而我仍然希望“agency / foo / bar”加载“default / foo / bar”,但由于别名,这是不可能的。有没有办法实现这个目标?

这是实际的片段:

    aliases: [
        ["gis/ol/config", "agency/ol/config"],
        ["aliased/gis/config", "gis/ol/config"]
    ],

尝试加载原始模块,但它不起作用.config是一个对象:

define([“aliased / gis / config”],function(config){// config is object});

1 个答案:

答案 0 :(得分:2)

我发现使用map代替aliases更清晰,更容易理解:

map: {
  '*': {
    'gis/ol/config': 'agency/ol/config'
  },
  'agency/ol/config': {
    'gis/ol/config': 'gis/ol/config'
  }
}

此配置导致所有模块加载'agency / ol / config'代替'gis / ol / config',但'agency / ol / config'除外,它将'gis / ol / config'加载为'gis /醇/配置”。