Poblar ComboBox dinámicamente en dojo

Intento poblar un ComboBox dinámicamente en dojo. Lo he declarado en html y estoy tratando de crear el almacén de memoria en js y luego establecer el atributo de tienda para el ComboBox con ese valor de tienda que estoy creando en js. Aquí están mis archivos html y javascript. Estoy llamando a una función en js que obtiene una respuesta json ( elemento ) como su argumento y en que vienen los valores de respuesta ( ResultData1, ResultData2, ResultData3 ) He probado eso al mantener cuadros de alerta. Pero al ejecutar esta página obtengo TypeError: La memoria no es un error de constructor . ¿Puede alguien por favor explicarme qué estoy haciendo mal?

FYI: He agregado toda la lista de dependencias requeridas en mi archivo js.

HTML:

 

JavaScript:

 _onPopulate : function(item) { alert('_onPopulate:'); var combo = dijit.byId('importDocumentTo'); alert('combo' + combo) var stateStore=new Memory({ data: [ {name:item["ResultData1"], id:"data1"}, {name:item["ResultData2"], id:"data2"}, {name:item["ResultData3"], id:"data3"} ] }); alert('stateStore:' + stateStore); var result=domAttr.set("importDocumentTo","store",stateStore); 

Usar una DOM API para actualizar la tienda en un widget no va a funcionar. En lugar de usar domAttr.set para establecer la tienda, debería hacer referencia al widget en sí y al set('store', ...) llamadas set('store', ...) en el widget.

Además, no debería haber una id estática en el widget en su plantilla, ya que ya le está asignando un punto de conexión. Al asignarle un id estático, es imposible crear más de una instancia del widget a la vez, ya que el ID estático entra en conflicto entre las instancias.

Debería poder resolver su problema con los siguientes cambios:

  1. Elimine la id="..." estática id="..." del elemento en la plantilla
  2. Reemplace var combo = dijit.byId('importDocumentTo') con var combo = this.importDocumentTo (para hacer referencia al punto de var combo = this.importDocumentTo en lugar de al ID)
  3. Reemplace domAttr.set("importDocumentTo", ...) con combo.set('store', stateStore)