define(["dojo/_base/declare", "core_library/_Widget", "esri/map"], function (declare, WidgetBase, myMap) {      return declare([WidgetBase], {         _map: null,          postCreate: function () {             this._map = new esri.Map(this.domNode, { extent:initExtent,slider: true });                      }     }); });
					
				
			
			
				
			
			
				Solved! Go to Solution.
Hi All,
I wanted to know in following code why we have to instantiate map as new esri.Map() and not as new myMap()define(["dojo/_base/declare", "core_library/_Widget", "esri/map"], function (declare, WidgetBase, myMap) { return declare([WidgetBase], { _map: null, postCreate: function () { this._map = new esri.Map(this.domNode, { extent:initExtent,slider: true }); } }); });
define(["dojo/_base/declare", "core_library/_Widget", "esri/map","dijit/form/Button"],
function (declare, WidgetBase, myMap,Button) {
    return declare([WidgetBase], {
        _map: null,
        postCreate: function () {
  /*
                 where Button is a local varibale.Now we can use new Button() to instantiate button 
                 instead of new dijit.form.Button()
               */
  var myButton = new Button({
                                      label: "Click me!",
                                      onClick: function(){}
                                      }, "someNode");
 /* 
 but for map although we have local variable named myMap,following does not work
        */
            this._map = new myMap(this.domNode, { extent:initExtent,slider: true });
        //following works
     this._map=new esri.Map(this.domNode, { extent: initExtent, slider: true });
        }
    });
});