脚本宝典收集整理的这篇文章主要介绍了php – 如何根据会话中的值嵌入带有Assetic的样式表,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
我用了
{% stylesheets '@CuteFlowCoreBundle/Resources/public/css/application.css' '@CuteFlowCoreBundle/Resources/public/css/theme/'~app.session.get('cuteflow_theme')~'/application.css' %} <link rel="stylesheet" href="{{ asset_url }}" tyPE="text/css" media="all" /> {% endstylesheets %}
但这会引发错误:
Unexpected token "@R_512_1162@tor" of value "~" in "CoreBundle::layout.htML.twig"
我也试过以下.但这也没有帮助.
{% set theme = '@CuteFlowCoreBundle/Resources/public/css/theme/'~app.session.get('cuteflow_theme')~'/application.css' %} {% stylesheets '@CuteFlowCoreBundle/Resources/public/css/application.css' theme %} <link rel="stylesheet" href="{{ asset_url }}" type="text/css" media="all" /> {% endstylesheets %}
assetic将迭代您的模板并从{%stylesheets%}块生成每个文件.
如果您使用变量(例如会话),则Assetic无法“猜测”所有可能的值.
你有两种可能性:
>单独2个CSS调用(1个用于公共调用,1个用于专用主题CSS) – 对我来说更有意义
>为每个主题创建1个CSS
分开2个CSS调用
{% stylesheets "A.css" "B.css" %} ... {% endstylesheets %} <link rel="stylesheet" href="{{ asset("css/" ~ theme ~ ".css") }}" />
每个主题创建1个CSS
如果要为每个可用主题创建一个主题,为了保持简单,您必须手动执行:
{% if theme == "XXX" %} {%stylesheets "A.css" "XXX.css" %} ... {% endstylesheets %} {% elseif theme == "yyY" %} {%stylesheets "A.css" "YYY.css" %} ... {% endstylesheets %} {% endif %}
以上是脚本宝典为你收集整理的php – 如何根据会话中的值嵌入带有Assetic的样式表全部内容,希望文章能够帮你解决php – 如何根据会话中的值嵌入带有Assetic的样式表所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。