如何根据编码标准格式化 Twig 模板中的长行?
How do I format long lines in Twig templates, according to coding standards?
我的模板中有以下代码,我在其中生成带有参数的路由:
<a class="btn btn-block btn-abcd" href="{{ path(
'auth.login',
{
'type': constant('User::TYPE_CANDIDATE'),
'provider': constant('UserProvider::PROVIDER_XING')
}
) }}">...</a>
我按照使用 PHP 代码的方式将其分成几行。我只是不确定这是否是推荐的做法。 coding standards page on the Twig site 没有解决这个具体问题。
一种常用的提高可读性的技巧是,每当您觉得需要缩短行时,您都可以在空 parenthesis/bracket/brace 处进行。不一定对所有这些,但一个是有意义的。
这是我的建议:
<a class="btn btn-block btn-abcd"
href="{{ path(
'auth.login', {
'type': constant('User::TYPE_CANDIDATE'),
'provider': constant('UserProvider::PROVIDER_XING')
}
) }}">
Link text
</a>
单行重新格式化的一个问题是,许多混乱检测器和 linters 会嘲笑长度超过 50 个字符的行。
我建议按照您最初建议的通用 PHP 规则进行拆分 - 只需将 {{
和 {%
等 Twig 标签与 <?php
标签一样对待。
我的项目遵循的标准可在此处获取:https://github.com/cybtachyon/twig-standards。
我重新格式化了 Alec 的答案以遵循更多上述 Twig 标准。
<a class="btn btn-block btn-abcd" href="{{
path(
'auth.login',
{
'type': constant('User::TYPE_CANDIDATE'),
'provider': constant('UserProvider::PROVIDER_XING'),
}
)
}}">
Link text
</a>
我的模板中有以下代码,我在其中生成带有参数的路由:
<a class="btn btn-block btn-abcd" href="{{ path(
'auth.login',
{
'type': constant('User::TYPE_CANDIDATE'),
'provider': constant('UserProvider::PROVIDER_XING')
}
) }}">...</a>
我按照使用 PHP 代码的方式将其分成几行。我只是不确定这是否是推荐的做法。 coding standards page on the Twig site 没有解决这个具体问题。
一种常用的提高可读性的技巧是,每当您觉得需要缩短行时,您都可以在空 parenthesis/bracket/brace 处进行。不一定对所有这些,但一个是有意义的。
这是我的建议:
<a class="btn btn-block btn-abcd"
href="{{ path(
'auth.login', {
'type': constant('User::TYPE_CANDIDATE'),
'provider': constant('UserProvider::PROVIDER_XING')
}
) }}">
Link text
</a>
单行重新格式化的一个问题是,许多混乱检测器和 linters 会嘲笑长度超过 50 个字符的行。
我建议按照您最初建议的通用 PHP 规则进行拆分 - 只需将 {{
和 {%
等 Twig 标签与 <?php
标签一样对待。
我的项目遵循的标准可在此处获取:https://github.com/cybtachyon/twig-standards。
我重新格式化了 Alec 的答案以遵循更多上述 Twig 标准。
<a class="btn btn-block btn-abcd" href="{{
path(
'auth.login',
{
'type': constant('User::TYPE_CANDIDATE'),
'provider': constant('UserProvider::PROVIDER_XING'),
}
)
}}">
Link text
</a>