javascript - 当来自 javascript 的引用时,将图像放置在 assetic 中的位置

标签 javascript php symfony twig assetic

我在 Symfony 2 中使用 assetic。我使用 assetic 加载了 JavaScript 和 CSS。

我需要在我的一个 JS 文件中引用一些图像。我是 assetic 的新手,根本找不到任何关于此的文档。这些图像当前位于我的包中(例如 /src/Vendor/BundleName/Resources/img/chair.jpg)。

我在这里看到一个主要陷阱: assetic 如何知道图像路径是什么?就其而言,它只是 JS 文件中的一个字符串。那么,我是否需要在其他地方定义该图像路径,或者是否在 JavaScript 中以不同的方式引用它?

或者我是否根本不使用 assetic,而只是将我的图像放入公共(public)目录(默认情况下 web)?我猜不是。

最佳答案

然后您应该使用JmikolaJsAssetsHelperBundle .

它允许您将 Symfony2 模板组件中的 AssetsHelper 服务公开给 JavaScript。

它支持相对和绝对 Assets URI。

示例,

配置完成后, bundle 会在您的 JavaScript 中创建一个 AssetsHelper 全局变量。然后,它允许您调用 getUrl() 帮助程序来构建 Assets 路径,如下所示,

'<img src="' + AssetsHelper.getUrl('/images/yourImage.png') + '">';

关于javascript - 当来自 javascript 的引用时,将图像放置在 assetic 中的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19949103/

相关文章:

javascript - vue-router 访问组件数据

javascript - 解析 Highcharts 的 JSON 数据

php - 我应该使用复杂的多维数组还是创建一个对象?

PHP上传图片什么都不做,没有报错

php - 向现有实体添加额外的 SELECT 表达式结果

javascript - 如何组织与Firefox扩展代码注入(inject)的双向通信?

javascript - KnockoutJS - 重新绑定(bind) ViewModel

php - 如何为图像创建 phpUnit 测试?

php - Symfony/phpUnit : functional test of a form modifying an entity

symfony - Doctrine - 在 onFlush 事件监听器中获取旧值