我使用gulp-file-include来预编译html页面。
https://www.npmjs.com/package/gulp-file-include
下面是我的示例代码。
@@for (var i = 0; i < foo.length; i++) {
<div class="foo">
@@if (`+i+` == 0) {
Hello
}
<p>`+foo[i]+`</p>
</div>
}
@@for
循环和<p>
+foo[i]+</p>
按预期工作。
但是,我无法使@@for
循环中的@@if
语句正常工作。我想检查i是否等于0。
如果我将@@if (
+i+== 0)
更改为@@if (
+i == 0+)
,则@@if
语句始终为真。
如果我把@@if (
+i+== 0)
改成@@if (i == 0)
,gulp-file-include
甚至不能编译,它说,'i没有定义'。
有人能帮我解决这个问题吗?
1条答案
按热度按时间kuhbmx9i1#
这个问题是由库中的解析顺序引起的。首先,它解析
if
,只看到文本而不是变量。如果您在gulp-file-include
的index.js
文件中交换if
和for
解析器,您应该能够使用以下命令: