Pregunta

En mi solicitud, tengo un módulo nombrado definido en línea en index.html:

<script>
    define('config', {
        mode: '...',
        environment: '...',
        apiUrl: '...',
        rootPath: '...',
        baseImageUrl: '...'
    });
</script>

Necesito definir esto en mi página web porque tire de algunas cosas en el uso de variables de entorno.Entonces, en mis módulos, entonces puedo incluir 'Config':

define(['config', 'jquery'], function(config, $) { ... });

Cuando ejecuto una construcción de ReimsJS usando Grunt (con Grunt-requieren , que usa r.JS), se queja que no es encontrar config.js.Mi configuración de compilación se ve así:

{
    baseUrl: 'js',
    main: 'app/Main',
    dir: 'js/build',
    out: null,
    modules: { ... },
    paths: { ... },
    shim: { ... }
}

Cuando construyo, obtengo:

Error: Error: ENOENT, no such file or directory '/projects/projectname/js/build/config.js

¿Cómo puedo permitir el uso de módulos mencionados con nombre, en línea junto con una construcción R.js?

¿Fue útil?

Solución

configuración

paths: {
   config : 'empty:'
}

En su archivo de configuración de compilación, debe excluir este módulo fuera del proceso de optimización y, como resultado, deje de recaudar este error.

Pero esto es un poco complicado, porque esta opción se usa comúnmente para excluir las dependencias de terceros (por ejemplo, al desarrollar una biblioteca de JS basada en la columna vertebral, sería mejor separar su LIB de la columna vertebral)

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top