如何配置jsbeautifier设置以实际美化我的HTML / Javascript代码

时间:2016-04-18 23:16:49

标签: javascript js-beautify

我看过几个关于如何格式化HTML和javascript代码的问题。一个常见的答案似乎是jsbeautify(和GitHub page for jsbeautify.js)是一个很好的解决方案。

但是,我似乎无法正确格式化我的任何代码,我想知道是否有一些需要更改的默认参数,或者我只是误解了美化应该做什么。我期待的是每个嵌套标签都将在新线上缩进到适当的级别。但相反,我所看到的(这似乎并不是jsbeautifier独有的)是有时几个标签在同一行上串起来,并且忽略断行的指令。

示例1:

我直接从this question获取此示例。

<div id="hlogo">
    <a href="/">Stack Overflow</a>ABC</div>

当我访问jsbeautifer.org并输入上述代码并点击“Beautify Javascript或HTML”时,它什么都不做!我希望输出看起来像这样:

<div id="hlogo">
    <a href="/">Stack Overflow</a>ABC
</div>

这是另一个例子。我选择了“包裹近80个字符的行”。

<!--Meta 6,1--><span><div>Just some sample text here which is fairly long, maybe about 100 characters or so, I'm not really counting.<input id="sdlkjhfkjhjkjhfjdfjkshdfkjshk"/><script type="text/javascript">;
</script></div></span>

此输出如下。请注意,没有包装。

<!--Meta 6,1--><span><div>Just some sample text here which is fairly long, maybe about 100 characters or so, I'm not really counting.<input id="sdlkjhfkjhjkjhfjdfjkshdfkjshk"/><script type="text/javascript">;
<
/script></div > < /span>

为什么不在<span><div>,最好是<input>分开?为什么开放&lt;在另一条线上?我期待这样的事情:

<!--Meta 6,1-->
<span>
    <div>
        Just some sample text here which is fairly long, maybe about 100 
        characters or so, I'm not really counting.
        <input id="sdlkjhfkjhjkjhfjdfjkshdfkjshk"/>
        <script type="text/javascript">;
        </script>
    </div > 
</span>

我需要传递一些参数才能使其正常工作吗?我已经查看了相关文档但是空白了。

1 个答案:

答案 0 :(得分:0)

您列出的第一个示例

scala> (nodeIwant.attributes("v"), nodeIwant.attributes("n")) res2: (Seq[scala.xml.Node], Seq[scala.xml.Node]) = (d,4)

无法正常工作,因为ABC周围的正斜杠导致美化将其作为正则表达式读取。

在包装示例中,我认为存在问题,因为您在单词I中有撇号。我把它拿出来,美化了之后做了一些移动的东西。你有没有试过repl.it?它是免费的,有一个更漂亮的按钮,我发现它的效果非常好。