bod*_*ser 4 assets symfony assetic
我有不同的Bundles:MainBundle(主页),SecurityBundle(登录,注册),MessageBundle(消息系统),ShopBundle.
我还遵循三阶段布局架构(:: base.html.twig,AcmeMainBundle :: layout.html.twig,AcmeMainBundle:默认:index.html.twig).
但是我在通过应用程序(例如jquery)共享公共js库并定义base.css(设置一些基类,背景,字体等)时遇到了问题.
那么最好的方法是使用共享的css和js而不必失去资产支持?
一个想法是创建一个CommonBundle,它包含所有全局js和css以及一些布局文件,但我不认为这是处理这个问题的最佳方法......
fse*_*art 17
如果要在所有捆绑包中共享公共资产,最好的选择是将它们放在app/Resources/public目录中.例如:
app/Resources/Public
|-- css
| `-- base.css
|-- js
| `-- jquery.js
Run Code Online (Sandbox Code Playgroud)
然后您可以在布局中引用它们,如下所示:
{% block stylesheets %}
{% stylesheets '../app/Resources/public/css/*' %}
<link rel="stylesheet" type="text/css" charset="UTF-8" media="all" href="{{ asset_url }}"/>
{% endstylesheets %}
{% endblock %}
{% block javascripts %}
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
{% javascripts '../app/Resources/public/js/*' %}
<script type="text/javascript" src="{{ asset_url }}"></script>
{% endjavascripts %}
{% endblock %}
Run Code Online (Sandbox Code Playgroud)
备注:正如您所看到的,对于像jQuery这样的常见库,最好的选择仍然是使用Google托管的常见缓存版本.这种做法可以加快您的应用程序响应时间.
| 归档时间: |
|
| 查看次数: |
8463 次 |
| 最近记录: |