2012-08-12 12 views
6

Estoy tratando de usar el optimizador r.js para compilar todas mis dependencias en un solo archivo. Aquí está mi estructura de archivos:RequireJS/r.js 'baseURL' Propiedad aparentemente ignorada

app 
    bin 
    src 
    css 
     main.css 
    js 
     libs 
     raphael-2.1.0 
      eve.js 
      raphael.amd.js 
      raphael.core.js 
      raphael.svg.js 
      raphael.vml.js 
     jquery-1.8.0.js 
     require-2.0.5.js 
     main.js 
    build.js 
    index.html 
    r.js 

Éstos son los contenidos de build.js:

({ 
    baseURL: 'js', 
    dir: '../bin', 
    paths: { 
    'jquery': 'libs/jquery-1.8.0', 
    'raphael': 'libs/raphael-2.1.0/raphael.amd' 
    }, 
    name: 'main', 
    removeCombined: true 
}) 

El 'libs/raphael-2.1.0/raphael.amd' cargas de dependencia todo lo demás en el directorio Raphael-2.1.0. La aplicación funciona como se esperaba si volviese a app.local/src, que carga los módulos en tiempo de ejecución a través requieren con una sola etiqueta de script en mi archivo index.html como esto:

<script src="js/libs/require-2.0.5.js" data-main="js/main.js" type="text/javascript" charset="utf-8"></script> 

Sin embargo, si trato de correr node r.js -o src/build.js el comando de aplicación, me sale un error como:

Error: ERROR: module path does not exist: /app/src/main.js for module named: main. Path is relative to: /app 
at /app/r.js:14215:31 

... y todo se copia en bin "tal cual". Si agrego 'main': 'js/main' al objeto paths, entonces r.js no puede encontrar jquery y raphael, si anuncio js/ en las rutas jquery y raphael entonces las declaraciones de dependencia de libs/raphael-2.1.0/rapheal.amd son incorrectas. Si los actualizo, todo se desarrolla como se esperaba, pero ahora la aplicación en app.local/src/index.html está rota. Además, pensé que ese era el punto de tener una propiedad baseURL en el archivo de compilación no? A mí me parece que se está ignorando el URLURL. ¿Qué estoy haciendo mal?

+0

¡Tener el mismo problema y me está volviendo loco! – hamishtaplin

+0

@mysterycommand, ¿ha encontrado una solución a esto? – Reuben

Respuesta

0

Como la mayoría de las cosas en JavaScript, la configuración baseUrl distingue entre mayúsculas y minúsculas. Cambie URL a Url y vea si ayuda.

+0

Me da el mismo "problema". No es realmente un problema, pero simplemente se ignora incluso con baseUrl. – FlavorScape

Cuestiones relacionadas