我有以下模板:
{{if . eq "login failed"}} <span class="text-error">Incorrect username or password</span> {{else if . eq "login success"}} <span class="text-success">You have successfully logged in!</span> {{end}}
我在执行模板时传递了一个字符串。
但是,出现以下错误:
executing "login.html" at <.>: can't give argument to non-function .
如何比较模板中的字符串?
eq是函数,而不是运算符。它以以下形式调用:(eq <x> <y>不是<x> eq <y>)。
eq
eq <x> <y>
<x> eq <y>
您可以通过将操作数从的侧面移动eq到之后来修复模板:
{{if eq . "login failed"}} <span class="text-error">Incorrect username or password</span> {{else if eq . "login success"}} <span class="text-success">You have successfully logged in!</span> {{end}}