¿Cómo estructurar varias páginas con RequireJS? Es, al igual que la muestra siguiente, que declarar cada clase en app.js es lo correcto. ¿Tiene cada archivo html para declarar el <script data-main="src/main" src="src/require.js"></script>
?Cómo estructurar varias páginas con RequireJS
Lo que quiero evitar es cargar todo el script cuando un usuario llega a la primera página de un sitio.
main.js que definen todas las dependencias externas:
require(
{
baseUrl:'/src'
},
[
"require",
"order!http://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js",
"order!http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.13/jquery-ui.min.js",
"order!http://ajax.cdnjs.com/ajax/libs/underscore.js/1.1.6/underscore-min.js",
"order!http://ajax.cdnjs.com/ajax/libs/backbone.js/0.3.3/backbone-min.js"
],
function (require) {
require(["app"], function (app) {
app.start();
});
}
);
app.js archivo de definición de cada componente:
define([ "product/ProductSearchView",
"product/ProductCollection"
], function (ProductSearchView,
ProductCollection) {
return {
start: function() {
var products = new ProductCollection();
var searchView = new ProductSearchView({ collection: products });
products.fetch();
return {};
}
}
});
¿Se debe nombrar el 'nuevo/módulo'? Si no es así, ¿cómo usar, digamos, su método 'clean()'? –
Ah, ¿y 'require' tiene que estar en otro' require' o puede aparecer en un bloque 'define'? –
Puedes ponerle un nombre si quieres, en ese caso querrás crear una definición en el nuevo/módulo. Actualmente lo estoy usando sin el nombre porque solo ejecutará su propia lógica. – dbme