go template

1. go template

1.1. if 语法

golang 的模板也支持 if 的条件判断, 当前支持最简单的 bool 类型和字符串类型的判断

{
    
    {
    
    if .condition}}
{
    
    {
    
    end}}

当 condition 为 bool 类型的时候, 则为 true 表示执行, 当 condition 为 string 类型的时候, 则非空表示执行。

当然也支持 else, else if 嵌套

{
    
    {
    
    if .condition1}}
{
    
    {
    
    else if .contition2}}
{
    
    {
    
    end}}

假设我们需要逻辑判断, 比如与或、大小不等于等判断的时候, 我们需要一些内置的模板函数来做这些工作, 目前常用的一些内置模板函数有:

  • not 非
{
    
    {
    
    if not .condition}}
{
    
    {
    
    end}}
  • and 与
{
    
    {
    
    if and .condition1 .condition2}}
{
    
    {
    
    end}}
  • or 或
{
    
    {
    
    if or .condition1 .condition2}}
{
    
    {
    
    end}}
  • eq 等于
{
    
    {
    
    if eq .var1 .var2}}
{
    
    {
    
    end}}
  • ne 不等于
{
    
    {
    
    if ne .var1 .var2}}
{
    
    {
    
    end}}
  • lt 小于 (less than)
{
    
    {
    
    if lt .var1 .var2}}
{
    
    {
    
    end}}
  • le 小于等于
{
    
    {
    
    if le .var1 .var2}}
{
    
    {
    
    end}}
  • gt 大于
{
    
    {
    
    if gt .var1 .var2}}
{
    
    {
    
    end}}
  • ge 大于等于
{
    
    {
    
    if ge .var1 .var2}}
{
    
    {
    
    end}}

猜你喜欢

转载自blog.csdn.net/wan212000/article/details/131512844
今日推荐