tutorial - dojo toolkit examples
Dojo 1.10 Crea un archivo.js con todos los módulos necesarios (1)
He leído mucho sobre las nuevas funciones en Dojo (después de 1.6) ... ¿es posible construir un archivo .js que contenga no solo el archivo dojo.js, sino también todos los módulos (y sus dependencias) necesarios? para la página?
Gracias.
El sistema de compilación en Dojo 1.x (pre y post AMD) admite capas de compilación que hacen exactamente lo que estás pidiendo. Usted configura capas con los módulos de nivel superior que su aplicación necesita, luego el proceso de compilación buscará dependencias recursivamente para incluir todo lo que necesitan los módulos de su aplicación en un módulo.
Un perfil de compilación de Dojo moderno generalmente se verá como el siguiente:
var profile = {
action: ''release'',
basePath: ''src'',
releaseDir: ''../dist'',
// Strip comments and newlines from CSS and flatten imports
cssOptimize: ''comments'',
// Use the Closure compiler (which supports dead code removal)
// for layer optimization; uglify is also a choice
layerOptimize: ''closure'',
// Specify the packages the build should scan
// (only include the ones you use; this follows the same format
// as the AMD packages option if you need to specify paths)
packages: [ ''dojo'', ''dijit'', ''dojox'', ''app'' ],
// Layers should always be defined over existing modules.
// You can define a layer over your own top-level application module,
// or you can redefine dojo/dojo so that all of your code is
// included as soon as you load dojo.js
layers: {
''dojo/dojo'': {
// This layer includes the loader
boot: true,
// When building dojo/dojo, don''t bundle all of dojo/_base
customBase: true,
include: [ ''app/main'' ]
}
}
};
Con un perfil de compilación ideal para una aplicación simple que garantiza la construcción de todo en un solo módulo, debe terminar cargando solo lo siguiente en producción:
- 1 archivo JS (dojo.js)
- 1 archivo NLS (los paquetes NLS se consolidan para que coincida con cada capa configurada)
- 1 archivo CSS (debido al aplanamiento de importación con
cssOptimize
) - Imágenes
Recursos adicionales:
- El tutorial de construcción de Dojo: http://dojotoolkit.org/documentation/tutorials/1.10/build/
- Trabajando con Dojo y AMD en producción: http://www.sitepen.com/blog/2012/08/27/working-with-dojo-and-amd-in-production/