Tengo un error y estoy tratando de resolverlo durante horas. Mi estructura de archivos:

-/node_modules
-/www
---bundle.js
---index.html

En index.html tengo ese código

<script src="node_modules/ng-cordova/dist/ng-cordova.min.js" type="text/javascript"></script>

<!-- cordova script (this will be a 404 during development) -->
<script src="cordova.js"></script>

<script src="bundle.js"></script>

El problema es que bundle.js se incluye bien, pero ng-cordova.min.js da el error 404

Cannot GET /node_modules/ng-cordova/dist/ng-cordova.min.js

Editar : también intenté esto sin éxito

<script src="/node_modules/ng-cordova/dist/ng-cordova.min.js" type="text/javascript"></script>
<script src="../node_modules/ng-cordova/dist/ng-cordova.min.js" type="text/javascript"></script>

No uso express o express.static.

0
Olga Akhmetova 11 dic. 2015 a las 16:56

3 respuestas

La mejor respuesta

A juzgar por la estructura de su proyecto, apuesto a que funciona con Express.js. También apuesto a que la carpeta www se configuró como una carpeta estática en la aplicación express como esta:

app.use('/', express.static(path.join(__dirname, www)));

En cuyo caso, su servidor solo servirá archivos ubicados en la carpeta www. Debe incluir cualquier dependencia del cliente en la carpeta www:

-/node_modules/
-/www/
--lib/
---ng-cordova/
--bundle.js
--index.html

Y luego cárgalos así:

<script src="lib/ng-cordova/dist/ng-cordova.min.js" type="text/javascript"></script>

ACTUALIZACIÓN

Simplemente ponga node_modules dentro de la carpeta www, debería funcionar bien.

2
Radu Nicoara 11 dic. 2015 a las 16:40

El problema aquí es que intenta cargar su archivo ng-cordova.min.js del index.html carpeta. Debes cambiar:

<script src="node_modules/ng-cordova/dist/ng-cordova.min.js" type="text/javascript"></script>

Para esto:

<script src="../node_modules/ng-cordova/dist/ng-cordova.min.js" type="text/javascript"></script>
0
Romain 11 dic. 2015 a las 14:04

Está intentando cargar el archivo desde el directorio incorrecto. Tienes que usar esta ruta:

src="../node_modules/

O esto:

src="/node_modules"

En caso de que el directorio anterior sea su directorio raíz.

Lo que también es confuso es que la línea en la que comentó el error no es la línea de la que proviene el error. ¿Por qué intentas vincular el archivo dos veces?

// Editar: Como Romain fue un minuto más rápido que yo, merece la recompensa de respuesta correcta. Yo diría: P Solo si realmente resuelve tu problema de c: D

0
LikeAJohny 11 dic. 2015 a las 14:08