您的地图对象不是全局变量,因此无法从其他模块访问它(只能从 appcontroller.js 访问)
尝试将其设为全局变量,然后可以在其他模块(js文件)上访问它
var map ; // declare global var here
define([
'dojo/_base/declare',
'esri/map'
], function ( declare, Map) {
return declare(null, {
//map: null, useless !
options: {},
constructor: function (options) {
this.options = options;
},
load: function () {
map = new Map(this.options.elem, this.options.mapOptions);
}
});
});