images composer component asset javascript image symfony path assets

composer - Symfony 2: rutas de imagen en archivo javascript con assetic



symfony javascript (1)

Estoy tratando de hacer un camino a una imagen desde un archivo js en mi proyecto symfony2 utilizando un activo como este:

var arr = $(''<img src="{{ asset("assets/images/linkArrow.png")}}">'').css({ position: ''absolute'', ... });

pero estoy teniendo el siguiente error

"NetworkError: 404 Not Found - mywebsite.com/bundles/web/app_dev.php/project/1/assets /images/linkArrow.png"

mi imagen está en el archivo web / assets.


No puede usar la sintaxis twig en su archivo JavaScript. Si puede poner su script en su archivo de plantilla, entonces funcionaría. Otra forma limpia sería definir una variable de ruta base de activos para su javascript. Por ejemplo, para resolver su problema, puede agregar el siguiente código en su plantilla de diseño:

<script> var assetsBaseDir = "{{ asset(''assets/'') }}" </script>

NB: asegúrese de definir este script antes de cargar el archivo javascript, si está haciendo referencia a la variable directamente en su archivo js

entonces puedes usarlo en todos tus archivos JavaScript como:

var arr = $(''<img src="'' + assetsBaseDir + ''images/linkArrow.png''+ ''">'').css({ position: ''absolute'', ... });

Feliz codificación!