Soy bastante nuevo en Angular, así que no estoy seguro de cuál es la mejor práctica para hacer esto.
Usé angular-cli y ng new some-project
para generar una nueva aplicación.
En él creó una carpeta "imágenes" en la carpeta "activos", por lo que ahora mi carpeta de imágenes src/assets/images
En app.component.html
(que es la raíz de mi aplicación), puse
<img class="img-responsive" src="assets/images/myimage.png">
Cuando lo hago ng serve
para ver mi aplicación web, la imagen no se muestra.
¿Cuál es la mejor práctica para cargar imágenes en una aplicación Angular?
EDITAR: Vea la respuesta a continuación. El nombre de mi imagen real estaba usando espacios, lo que a Angular no le gustó. Cuando eliminé los espacios en el nombre del archivo, la imagen se mostró correctamente.
html
angular
angular-cli
usuario3183717
fuente
fuente
public
carpeta fuerasrc
y mostrando la imagen con<img class="img-responsive" src="../../public/images/myimage.png">
assets/images/myimage.png
funcionó..sgf
. Ej. ) Quiero alojar esos archivos y vincularlos desde la aplicación, pero aparentemente simplemente ponerlos en laassets
carpeta no es suficiente. Algunas ideas ?Respuestas:
Lo arreglé. Mi nombre de archivo de imagen real tenía espacios, y por alguna razón a Angular no le gustó eso. Cuando eliminé los espacios de mi nombre de archivo,
assets/images/myimage.png
funcionó.fuente
En mi proyecto, estoy usando la siguiente sintaxis en mi app.component.html:
o
use [src] como expresión de plantilla cuando esté vinculando una propiedad mediante interpolación:
es lo mismo que:
Fuente: ¿cómo enlazar img src en angular 2 en ngFor?
fuente
Angular-cli incluye la carpeta de activos en las opciones de compilación de forma predeterminada. Recibí este problema cuando el nombre de mis imágenes tenía espacios o guiones. Por ejemplo :
Si coloca la imagen en la carpeta assets / img, entonces esta línea de código debería funcionar en sus plantillas:
Si el problema persiste, simplemente verifique si su archivo de configuración Angular-cli y asegúrese de que su carpeta de activos esté agregada en las opciones de compilación.
fuente
Siendo específicos de Angular2 a 5, podemos vincular la ruta de la imagen utilizando el enlace de propiedad como se muestra a continuación. La ruta de la imagen está entre comillas simples.
Ejemplo de muestra
<img [src]="'assets/img/klogo.png'" alt="image">
fuente
Normalmente, "aplicación" es la raíz de su aplicación, ¿lo ha intentado
app/path/to/assets/img.png
?fuente
app
yassets
carpetas por separado debajo de lasrc
carpeta. (lo siento, no estoy seguro de cómo se supone que debo formatear la estructura de carpetas y los nombres)1. Agregue esta línea en la parte superior del componente.
2. agregue esta línea en su clase de componente.
agregue este 'imgname' en la etiqueta img src en la página html.
<img src={{imgname}} alt="">
fuente
para mí "yo" era capital en "Imágenes". que tampoco le gustó a angular-cli. por lo que también distingue entre mayúsculas y minúsculas.
fuente
Siempre depende de dónde esté su archivo html que se refiere a la ruta del recurso estático (en este caso, la imagen).
Ejemplo A:
Como puede ver, yourpage.html está a una carpeta de la raíz (carpeta src), por esta razón necesita una cantidad de ../ para volver a la raíz y luego puede caminar a la imagen desde la raíz:
Ejemplo B:
Aquí tienes que ir en el árbol por 2 carpetas:
fuente