不支持 else 语法
查阅官方文档,发现是支持 if 语法的:

在实际使用中,自然而然的就用上了 if/else:
html
@@include('test.html', {
"age": 16
})
@@include('test.html', {
"age": 16
})
.
html
@@if(age >= 18){
<b>允许进入</b>
}else{
<b>禁止进入</b>
}
@@if(age >= 18){
<b>允许进入</b>
}else{
<b>禁止进入</b>
}
但输出的结果是:

所以这里只能写两个 if 来实现:
html
@@if(age >= 18){
<b>允许进入</b>
}
@@if(age < 18){
<b>禁止进入</b>
}
@@if(age >= 18){
<b>允许进入</b>
}
@@if(age < 18){
<b>禁止进入</b>
}
如果有更多条件判断,则继续增加 if 语句即可。
临时变量无法在 if for loop 嵌套中使用
这个描述可能不太好理解,具体看下这段代码:
html
@@for(var i = 0; i < arr.length; i++){
@@if(i == 0){
<b>这是第一条</b>
}
}
@@for(var i = 0; i < arr.length; i++){
@@if(i == 0){
<b>这是第一条</b>
}
}
我希望循环 arr 数组的时候,第一条输出“这是第一条”文字,但执行会提示 i is not defined: (i == 0)
,试了好多写法都不行,最后发现用反单引号({% raw %}{% endraw %}
)加三元运算符可以解决这个问题:
html
@@for(var i = 0; i < arr.length; i++){
`+(i == 0 ? '<b>这是第一条</b>' : '')+`
}
@@for(var i = 0; i < arr.length; i++){
`+(i == 0 ? '<b>这是第一条</b>' : '')+`
}
wiki
文章信息
- 文章标题:gulp-file-include 采坑杂记 - Keystion
- 文章链接:https://webclown.net/posts/gulp-file-include-采坑杂记.html
- 版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。
- 转载请注明来自 Keystion !
markdown
[gulp-file-include 采坑杂记 - Keystion](https://webclown.net/posts/gulp-file-include-采坑杂记.html)
[gulp-file-include 采坑杂记 - Keystion](https://webclown.net/posts/gulp-file-include-采坑杂记.html)