Js-beautify: 仅当行达到一定长度时才换行对齐 html 属性

创建于 2017-09-27  ·  8评论  ·  资料来源: beautify-web/js-beautify

当行达到一定长度的字符时,是否可以只包装 html 属性。 例如,它在 Phpstorm 中的工作方式是,如果我有这样的东西。

<div v-for="item in items" class="items">
    <p>{{item.name}}</p>
</div>

Phpstorm 格式化程序不包装属性,但如果我的代码看起来像这样

<div v-for="item in items" class="items" v-if="items.notEmpty()" :class="{active: isActive} :key="item.id">
    <p>{{item.name}}</p>
</div>

并且行包含超过 100 个字符,然后它将包装属性并像这样对齐它们

<div v-for="item in items" 
     class="items" 
     v-if="items.notEmpty()" 
     :class="{active: isActive} 
     :key="item.id">
    <p>{{item.name}}</p>
</div>
html enhancement

最有用的评论

我在想像“包装前的属性数量”这样的选项会很好,所以我可以说,< 4 个属性的任何东西都不会被包装,而任何 >= 4 个属性的东西都会被包装,那就是当然,每个用户都可以配置。

所有8条评论

相关讨论见#1125。 不完全相同的功能,但相关。

这是要实施了吗? 以下情况非常烦人:
<meta content="IE=edge" http-equiv="X-UA-Compatible">

变成:

<meta content="IE=edge"
      http-equiv="X-UA-Compatible">

即使有足够的空间将其排成一行

@RenaldasK
此问题未分配。 它需要有人来实施修复和测试,提交 PR,并推动它完成。 也许你?

+1,这正是我们期望行为起作用的方式

这个周末我可能会去看看。 这应该在--wrap-attributes auto或一些新选项下实现吗?

实际上,我查看了 #1285 问题,那里描述的行为也适合我的需求,所以我想我可能会分叉这个 PR #1297 并尝试合并和关闭它。

我在想像“包装前的属性数量”这样的选项会很好,所以我可以说,< 4 个属性的任何东西都不会被包装,而任何 >= 4 个属性的东西都会被包装,那就是当然,每个用户都可以配置。

@Adondriel这很棘手。 一个属性可以只有 3-5 个字符长,另一个可以是 50 个字符。 默认情况下包装应该处理长度,而不是属性数量,但这是一个有趣的附加选项,需要考虑......

此页面是否有帮助?
0 / 5 - 0 等级