使用 Symfony2 在 Twig Extension 中包含资产
Include assets in Twig Extension with Symfony2
我想在 Twig 扩展中包含一些脚本文件的资产。例如。我想声明 twig 函数 {{ init_project() }}
,但是当我在我的 twig 函数 '<script type="text/javascript" src="{{ asset('bundles/mybundle/js/script.js') }}"></script>'
中写入时,它不起作用,它在浏览器的调试面板中出现 return 404 错误。那我该怎么做呢?
看'asset'
树枝函数:
您可以在 \Symfony\Bundle\TwigBundle\Extensions\AssetsExtension
中找到它
public function getAssetUrl($path, $packageName = null, $absolute = false, $version = null)
{
$url = $this->container->get('templating.helper.assets')->getUrl($path, $packageName, $version);
if (!$absolute) {
return $url;
}
return $this->ensureUrlIsAbsolute($url);
}
不要在您的扩展程序中调用 '{{asset}}'
,只需调用 public 函数 getAssetUrl()
我想在 Twig 扩展中包含一些脚本文件的资产。例如。我想声明 twig 函数 {{ init_project() }}
,但是当我在我的 twig 函数 '<script type="text/javascript" src="{{ asset('bundles/mybundle/js/script.js') }}"></script>'
中写入时,它不起作用,它在浏览器的调试面板中出现 return 404 错误。那我该怎么做呢?
看'asset'
树枝函数:
您可以在 \Symfony\Bundle\TwigBundle\Extensions\AssetsExtension
public function getAssetUrl($path, $packageName = null, $absolute = false, $version = null)
{
$url = $this->container->get('templating.helper.assets')->getUrl($path, $packageName, $version);
if (!$absolute) {
return $url;
}
return $this->ensureUrlIsAbsolute($url);
}
不要在您的扩展程序中调用 '{{asset}}'
,只需调用 public 函数 getAssetUrl()