Use su atributo data-main
para cargar su secuencia de comandos General. En las páginas personalizadas, donde sea que esté a punto de hacer algo que requiera un módulo personalizado, simplemente envuélvalo en una llamada require
. Su página maestra (o plantilla o el diseño o como se llame en su plataforma de servidor) tendrían la siguiente:
<html><head>
<script language="javascript" src="require.js" data-main="general" ></script>
</head>
su página de marcado personalizado puede tener este aspecto (la sintaxis de la memoria; verificar dos veces!)
<p class="funny">I'm a funny paragraph</p>
<script language="javascript">
require(['funny-stuff'], function(fs) {
fs.doSomthing();
});
</script>
El módulo funny-stuff
solo se cargará en las páginas que lo soliciten. Si no desea o no puede tener marcado separado en algunas páginas, puede cargar dinámicamente una dependencia de su secuencia de comandos principal envolviendo una llamada require
dentro de una declaración if
. Dentro de general.js
:
// Determine if we need the custom module
if (isFunnyPage()) {
require(['funny-stuff'], function(fs) {
fs.doSomething();
});
}
Usted tiene que tener cuidado cuando se ejecuta el optimizador, porque va a encontrar la dependencia se hace referencia en la llamada require
, y por el paquete por defecto con el archivo principal. Por lo tanto, necesitaría configurar el optimizador para excluir los módulos personalizados.