/ / Vkladanie premenných modulov v Dojo? - dojo

Načítavajú sa premenné modulov v Dojo? - dojo

Som nováčik dojo a nemôžem zistiť, prečo sa to deje

v dojo.html:

require(["dojo/query", "dojo/NodeList-dom", "dojo/domReady!", "a" ], function(query, a) {
query("#greeting").style("color", "red");
alert(a.sheep);
});

v a.js

define([], function() {
var a = {
"sheep": "blah",
}
return a;
});

Vyžadovanie a načítanie modulu a je v poriadku, ale kedySnažím sa upozorniť a.sheep, mám nedefinované. Poznámka: Aj ja som sa snažil deklarovať ovce: "bla" a skúsiť zmeniť ovce na funkciu varovania a spustiť a.sheep, čo fungovalo.

odpovede:

2 pre odpoveď č. 1

dôvod, pre ktorý nemáte prístup a.sheep je to, že existuje dojo/NodeList-dom modul v a variabilné. Poradie prvkov v define/require pole sa viaže na zoznam argumentov v nasledujúcom function, Takže by ste mali napísať:

require(["dojo/query", "a", "dojo/NodeList-dom", "dojo/domReady!"], function(query, a) {

})

Z praktického hľadiska sa mi stáva aj formátovanie môjho kódu takto:

define([
"dojo/_base/declare",
"dojo/query",

"a",

"dojo/NodeList-dom",
"dojo/domReady!"
],
function(
declare
query,

a
){

return declare(null, {

constructor: function() {}

});
});

Každý modul na vlastnej linke plus logické zhlukovanie modulov cez prázdne linky.