dojoConfig = { async: 1, parseOnLoad: true, packages: [ { name: "cbtree", location: location.pathname.replace(/\/[^/]+$/, "") + "src/libs/cbtree" } ] };
define(['cbtree/Tree', 'cbtree/models/TreeStoreModel'], function(Tree, TreeStoreModel) { return { treeTest: function(){ console.log("cbtree files loaded:", Tree, TreeStoreModel); } }; });
You use define to define a new module. You use require when you are only consuming other modules and not defining your own.
In fact I don't know the difference between "require" and "define".
dojoConfig = { has: { "dojo-firebug": true, "dojo-debug-messages": true }, async: true, waitSeconds: 3, tlmSiblingOfDojo: false, baseUrl: 'location.pathname.replace(/\/[^/]+$/, "")', packages: [{ name: "agsjs", location: "/js/lib/agsjs/" }, { name: "modules", location: "/js/lib/WURadarLayer/" }], };
<!DOCTYPE html> <html> <head> <!-- --- header stuff .... --> <link rel="stylesheet" href="http://serverapi.arcgisonline.com/jsapi/arcgis/3.3/js/dojo/dijit/themes/claro/claro.css"> <link rel="stylesheet" href="http://serverapi.arcgisonline.com/jsapi/arcgis/3.3/js/esri/css/esri.css"> <script src="js/my/dojoConfig.js"></script> <script>var dojoConfig = { parseOnLoad: true };</script> <script src="//serverapi.arcgisonline.com/jsapi/arcgis/3.3/"></script> <script src="js/my/myMap.js"></script> </head> <body class="claro"> <!-- ---- body stuff .... -->
require(["esri/map", "esri/layers/FeatureLayer", "esri/dijit/Popup", "esri/tasks/Query", "esri/dijit/Geocoder", "esri/dijit/Scalebar", "esri/dijit/Legend", "esri/dijit/Print", "agsjs/TOC", "modules/WURadarLayer", "dojo/DeferredList", "dojo/_base/connect", "esri/layers/FeatureLayer", "esri/dijit/Measurement", "dijit/TitlePane", "esri/dijit/OverviewMap" ], function (map) { var initialExtent = esri.geometry.geographicToWebMercator( new esri.geometry.Extent(-81.20953, 32.12281, -81.17640, 32.14837, new esri.SpatialReference({ wkid: 3857 }) )); var popup = new esri.dijit.Popup(null, dojo.create("div")); map = new esri.Map("map", { slider: false, wrapAround180: true, //set wraparound to false if the extent is limited. showAttribution: false, logo: false, // or, just hide the esri logo and don't ask me no questions infoWindow: popup, slider: true, sliderStyle: "small", autoResize: true, extent: initialExtent }); var basemap = new esri.layers.ArcGISTiledMapServiceLayer(getWebData.ESRIWorldTopoMap); map.addLayer(basemap); dojo.place(popup.domNode, map.root); ////// lots more stuff, and widgets, including a radar loop layer (WURadar) and Table of Contents (AGSJS TOC) map.setExtent(initialExtent); map.resize(); dojo.connect(map, "onLoad", function () { dojo.connect(dijit.byId("map"), "resize", map, map.resize); }); })
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=7,IE=9" /> <!--The viewport meta tag is used to improve the presentation and behavior of the samples on iOS devices--> <meta name="viewport" content="initial-scale=1, maximum-scale=1,user-scalable=no"/> <title>Checkbox Tree</title> <style type="text/css"> @import "http://serverapi.arcgisonline.com/jsapi/arcgis/3.0/js/dojo/dijit/themes/claro/claro.css"; @import "src/libs/cbtree/themes/claro/claro.css"; </style> <script type="text/javascript"> var dojoConfig = { parseOnLoad : true, packages : [{ name : "cbtree", location : location.pathname.replace(/\/[^/]+$/, "") + "/src/libs/cbtree" }] }; </script> <script type="text/javascript" src="http://serverapi.arcgisonline.com/jsapi/arcgis/?v=3.0"></script> <script type="text/javascript"> require(["dojo/_base/connect", "dojo/store/Observable", "dojo/query", "dojo/domReady", "cbtree/Tree","cbtree/models/ForestStoreModel", "dijit/layout/BorderContainer", "dijit/layout/ContentPane"], function(connect, Observable, query, domReady, Tree, ForestStoreModel) { function checkBoxClicked( item, nodeWidget, evt ) { alert( "The new state for " + this.getLabel(item) + " is: " + nodeWidget.get("checked") ); } var store = new dojo.data.ItemFileWriteStore({ url : "data/small.json" }); var model = new ForestStoreModel({ store : store, query : { type : 'thema' }, rootId : 'root', rootLabel : 'Themen' }); tree = new Tree({ model : model, id: "MenuTree", showRoot : false, branchIcons: true, branchReadOnly: true, checkBoxes: true, nodeIcons: true }); connect.connect( tree, "onCheckBoxClick", model, checkBoxClicked ); domReady( function() { tree.placeAt('legendPane'); }); console.debug("fertig geladen") init(); }); </script> </head> <body class="claro"> <div id="legendPane"> sdgfhkl </div> </body> </html>
Error: multipleDefine ...push(_2f1);_2f1=null;_2e9=_2eb=-1;}else{if(cc=="="){var _2f7=("|~^$*".indexOf(lc... ?v=3.0 (Zeile 15) src: dojoLoader ?v=3.0 (Zeile 15) info: Object { pid="cbtree", mid="cbtree/Tree", pack={...}, mehr...}
... do some css stuff ... <script type="text/javascript"> var dojoConfig = { parseOnLoad : true, isDebug : true, packages : [{ name : "cbtree", location : location.pathname.replace(/\/[^/]+$/, "") + "/js/cbtree", }] }; </script> <script type="text/javascript" src="http://serverapi.arcgisonline.com/jsapi/arcgis/?v=3.0"></script> <script type="text/javascript"> dojo.require("dijit.dijit") dojo.require("dijit.layout.BorderContainer"); dojo.require("dijit.layout.ContentPane"); dojo.require("dijit.layout.AccordionContainer"); dojo.require("esri.map"); dojo.require("esri.dijit.Legend"); dojo.require("esri.layers.FeatureLayer"); dojo.require("esri.dijit.OverviewMap"); dojo.require("esri.dijit.Scalebar"); dojo.require("dojo.parser"); dojo.require("dijit.TooltipDialog"); dojo.require("dojo.number"); dojo.require("dijit.form.CheckBox"); var map, layer var mapServiceURL = "path to our server" var featureLayerArray = new Array() var activeLayer var mouseOverEvent, mouseOutEvent function init() { require(["dojo/data/ItemFileReadStore", "dojo/store/Observable", "cbtree/Tree", "cbtree/models/ForestStoreModel", "dojo/query", "dojo/domReady"], function(ItemFileReadStore, Observable, Tree, ForestStoreModel, dndSource, query) { var store = new ItemFileReadStore({ url : "data/layer.json" }); var model = new ForestStoreModel({ store : store, query : { type : 'thema' }, rootId : 'root', rootLabel : 'Themen' }); var tree = new Tree({ model : model, id: "MenuTree", branchIcons: true, branchReadOnly: true, checkBoxes: true, nodeIcons: true });
Angemeldete Mitglieder können Beiträge verfassen, Updates folgen und mehr. Neu hier? Registriere ein kostenloses Konto.
Find useful guides, FAQs, and documents to help you navigate and make the most of Esri Community.