CSS   发布时间:2022-04-17  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了symfony2 – 如何在Symfony 2和Twig中包含CSS文件?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_673_1@我在玩Symfony2,我有问题包括CSS和JS文件在Twig模板。

我有一个名为Webs / HomeBundle的包,其中我有HomeController与indexAction,呈现一个树枝模板文件:

public function indexAction()
{
    return $this->render("WebsHomeBundle:Home:index.html.twig");
}

所以这很容易。现在我想做的是在这个Twig模板中包含一些CSS和JS文件。模板看起来像这样

<!DOCTYPE html>
<html>
<head>  
    {% block stylesheets %}
        <link href="{{ asset('css/main.css') }}" type="text/css" rel="stylesheet" />
    {% endblock %}
</head>
<body>
</body>
</html>

我想包括的文件,main.css文件位于:

Webs/HomeController/resources/public/css/main.css

所以我的问题基本上是,我怎么在Twig模板中包含简单的CSS文件?

我使用Twig asset()函数,它只是没有击中正确的CSS路径。此外,我在控制台中运行此命令:

app/console assets:install web

这创建了一个新文件夹

/web/bundles/webshome/...

这只是链接到

src/Webs/HomeController/resources/public/

对?

问题

>在哪里放置您的资产文件,JS,CSS和图像?是否可以将它们放在Bundle / resources / public文件夹中?这是他们的正确位置吗?
>如何使用资产函数将这些资产文件包含在您的Twig模板中?如果他们在公共文件夹,我如何包括他们?
>我应该配置别的东西吗?

解决方法

你正在做的一切正常,除了传递你的bundle路径到asset()函数。

根据documentation – 在你的例子中,应该如下所示:

{{ asset('bundles/webshome/css/main.css') }}

提示:您也可以调用assets:install with –symlink key,因此它将在web文件夹中创建符号链接。这是非常有用的,当你经常应用js或css更改(这样,您的更改,应用于src / YouBundle / resources / public将立即反映在web文件夹,而不需要调用assets:install)

app/console assets:install web --symlink

此外,如果您希望在子模板中添加一些资源,可以为Twig块调用parent()方法。在你的情况下会是这样:

{% block stylesheets %}
    {{ parent() }}

    <link href="{{ asset('bundles/webshome/css/main.css') }}" rel="stylesheet">
{% endblock %}

大佬总结

以上是大佬教程为你收集整理的symfony2 – 如何在Symfony 2和Twig中包含CSS文件?全部内容,希望文章能够帮你解决symfony2 – 如何在Symfony 2和Twig中包含CSS文件?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。