for循环中的html minifier解析错误

时间:2015-04-24 15:56:24

标签: javascript html for-loop html-parsing

我的html文件看起来像

<% for (var i = 0, l = props.length; i < l; ++i) {
  var _name = props[i][0];
  var _value = props[i][1]; %>
<p>
  <span class="prop"><%=_name%>&#58;&nbsp;</span><span class="value"><%=_value%></span>
</p>
<% } %>

我在for循环中得到一个html解析错误。

  

警告:命令失败:   /Users/xx/xx/xxxxx/node_modules/html-minifier/dist/htmlminifier.js           抛出&#39;解析错误:&#39; + html;                                 ^   解析错误:

我不知道偶数意味着什么。我检查了道具阵列,它给了我正确的数据。

  

道具= [[&#34; a&#34;,&#34; b&#34;],[&#34; c&#34;,&#34; d&#34;],[&#34 ; E&#34;&#34; F&#34;]]

当我将静态打印出来时,html会给出正确的值。

<p>
  <span class="prop"><%=props[0][0]%>&#58;&nbsp;</span><span class="value"><%=props[0][1]%></span>
</p>
<p>
  <span class="prop"><%=props[1][0]%>&#58;&nbsp;</span><span class="value"><%=props[1][1]%></span>
</p>
<p>
  <span class="prop"><%=props[2][0]%>&#58;&nbsp;</span><span class="value"><%=props[2][1]%></span>
</p>

这给了我所需的结果。

但我想知道如何修复for循环中的解析错误。

1 个答案:

答案 0 :(得分:2)

您似乎在非普通html文件上使用html-minifier,使用特殊服务器标记,例如<%<%=_value%>。您应该仅对服务器生成的html文件使用缩小过程,而不是模板。