0
使用我试图用宏来添加一些向上和向下箭头用于在KnpPaginator使用的表排序。创建宏模板
我是新来的宏和DOC对我来说有点乏味,所以我会尽量展示和讲解我做了什么。
我创造了我的宏文件夹中的树枝被称为icons.html.twig
包含我的宏
{% extends 'STBackofficeBundle::base.html.twig' %}
{% macro icon_class(type) %}
{% set type_class = {
sort: 'fa-angle-down'
} %}
{{ type_class[type] }}
{% endmacro %}
我进口它在我的模板
{% import "STBackofficeBundle:Macros:icons.html.twig" as icons %}
,并试图将其添加在表头
<th>{{ icons.icon_class('sort') }}</th>
所以它并没有真正的工作,因为它显示的字符串fa-angle-down
而不是图标本身。当我尝试删除引号时,我有一个错误。所以我不知道我做错了什么?
非常感谢你的工作! :)我接受了你的答案。我还有一个问题,如果点击时排序,我想让箭头变成“fa-angle-up”,当我再次单击时,它会变回“fa-angle-down”? –
如果使用JS对entires进行排序,则应该使用JS将图标的类从'fa-angle-down'更改为'fa-angle-up'。 如果您使用的是PHP控制器做到这一点,你应该通过排序参数,URL,并根据该参数在模板呈现相应的图标。 –
我使用KnpPaginator,并且我想避免使用js,因为我使用的是php。我不能在宏中用'if'来改变箭头吗?你有一个简单的例子来说明如何轻松做到这一点?因为我不太明白你想告诉我什么 –