Pregunta Cargando archivos min.js generados por TypeScript con Require


Tengo una aplicación completa que funciona con Typescript y RequireJs, está funcionando perfectamente. Ahora descargué WebEssentials y está generando los archivos de script minimizados. WebEssentials genera archivos separados * .min.js con el mismo nombre que el archivo de script original.

¿Cómo puedo decirle a RequireJs que cargue mis archivos minificados en lugar de mis archivos de script originales?

Gracias por adelantado


5
2018-01-14 17:41


origen


Respuestas:


Puede utilizar la configuración de ruta para anular las rutas de módulo. Incluso puedes volver a los archivos no minificados:

requirejs.config({
    enforceDefine: true,
    paths: {
        jquery: [
            'lib/jquery.min',
            'lib/jquery'
        ]
    }
});

¡Puede haber una forma más general de usar archivos min que no conozco!


8
2018-01-14 22:29



Puede crear una versión personalizada simple de require que agregará condicionalmente '.min.js' a todas las solicitudes de archivos de módulos que normalmente solo recibirían el apéndice '.js'. Considera lo siguiente:

    //Establish a new 'useMinified' boolean in your initial config.
    require.config({ useMinified: true });

A continuación, edite el archivo de biblioteca require.js y modifique la función 'nameToUrl' de la siguiente manera:

    //Join the path parts together, then figure out if baseUrl is needed.
url = syms.join('/');

    //new statement
var extension = config.useMinified ? '.min.js' : '.js';

    //customized statement
url += (ext || (/^data\:|\?/.test(url) || skipExt ? '' : extension));

url = (url.charAt(0) === '/' || url.match(/^[\w\+\.\-]+:/) ? '' : config.baseUrl) + url;

9
2018-06-26 16:30



No hay magia en esto. Aunque tienes algunas opciones

  1. Utilizar el RequireJS optimizer para generar archivos mínimos para ti Muy configurable.
  2. Utilizar el --out opción del compilador para concatenar todos sus archivos en uno y minimizar que
  3. Cree un archivo de script / lote para copiar su aplicación en otro lugar, cambie el nombre de todos los archivos .min.js a .js y sobrescriba los archivos no minados. O alguna otra mezcla pero obtienes la esencia
  4. Utilizar el configuración de caminos como Steve mencionó. OK para aplicaciones pequeñas, menos que ideal para grandes.

Para obtener el mejor rendimiento, debe buscar en el optimizador y determinar si el enfoque de un solo script es la decisión correcta o si un mejor enfoque es el de varias bibliotecas más pequeñas. Dudo que cargar cada archivo .min.js sea la solución ideal para usted.


0
2018-01-15 00:54