spu*_*dly 8 javascript templates mustache
好的,所以我知道小胡子模板没有逻辑,但我该如何实现呢:
<?php
if ($a || $b) {
echo $c, $d, $e;
}
?>
Run Code Online (Sandbox Code Playgroud)
...使用胡子模板语法?我能想到的最好的是:
{{#a}}
{{c}}{{d}}{{e}}
{{/a}}
{{^#a}}
{{#b}}
{{c}}{{d}}{{e}}
{{/b}}
{{/a}}
Run Code Online (Sandbox Code Playgroud)
...这显然是可怕的,并要求我复制'if'中的任何内容.
有任何想法吗?
bob*_*cow 10
胡子明确禁止这样的事情.这是逻辑,你试图把它放在你的模板:)
适当的方法是将逻辑移动到ViewModel或View对象:
<?php
class MyView {
public $a;
public $b;
public function aOrB() {
return $this->a || $this->b;
}
}
Run Code Online (Sandbox Code Playgroud)
但如果是我,我会将该功能命名为hasFoo
或者showBar
,因此它具有一些语义含义.
因为你正在处理"我应该展示这个块吗?" 您的View或ViewModel中的逻辑,您将返回模板中的正常部分:
{{#aOrB}}
{{c}}{{d}}{{e}}
{{/aOrB}}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
10194 次 |
最近记录: |