2012-03-21 12 views
5

Me preguntaba si había alguna extensiones VS 2010 que hay para desencadenar la optimización RequireJS similar a cómo squishit funciona:RequireJS Optimizer y VS 2010 Itegration

  • Cuando está en modo de depuración, archivos de módulo estancia separada
  • cuando en modo de lanzamiento, los archivos de módulos consiguen minified y se combinan

Respuesta

0

Editar: utilizamos VS2012, pero el principio general debe trabajar

Si bien esta no es una respuesta directa a su pregunta, este es el trabajo que se nos ocurrió:

Cree un módulo para los archivos que desea minimizar y agrupar. Por el bien de la discusión, llámelo base_module.

Crear un script en su _layout.cshtml

function requireBaseModulesDebug(func) { 
    // In debug mode, just execute the call back directly. 
    // Do not load any base modules, require each module to fully state any dependencies. 
    func(); 
} 

function requireBaseModulesRelease(func) { 
    require(["js_modules/base_module"], func); 
} 


// Views are always in DEBUG mode, so we have to this this work-around. 
@if (HttpContext.Current.IsDebuggingEnabled) 
{ 
    <text>requireBaseModules = requireBaseModulesDebug;</text> 
} 
else 
{ 
    <text>requireBaseModules = requireBaseModulesRelease;</text> 
} 

Con ese guión creado, y luego tienes que envolver cualquier cosa que pudiera utilizar un módulo de la siguiente manera:

// If you are in DEBUG mode, requireBaseModules won't do anything 
// But, if you are in a release mode, then requireBaseModules will load your 
// bundled module and have them primed. Any modules required but NOT in your 
// base bundle will be loaded normally. 
requireBaseModules(function() { 
    require(['jQuery'], function ($) { 
     // Do Stuff 
    }); 
});