首页 > 其他分享 >jijia2 语法基础

jijia2 语法基础

时间:2023-01-28 18:24:37浏览次数:39  
标签:name defined macro 基础 语法 jijia2 endfor endmacro test

{# 这是一行注释 #}

{{ name }}

{# 定义变量 #}
{% set age=32 %}
{{ age }}

{# 比较运算 #}
{{ 1 == 1 }}
{{ 1 != 1 }}
{{ 1 > 1 }}
{{ 1 >= 1 }}
{{ 1 < 1 }}
{{ 1 <= 1 }}
{# 逻辑运算 #}
{{ 1 != 1 or 1 >=1 }}
{{ 1 != 1 and 1 >=1 }}

{# 取反 #}
{{ not 1 <= 1 }}

{# 算数运算 #}
{{ 1+1 }}
{{ 1-1 }}
{{ 1*1 }}
{{ 1/1 }}
{{ 1%1 }}
{{ 1**1 }}

{# 成员运算 #}
{{ 1 in [1,2] }}
{{ not 1 in [1,2] }}
{{ 1 not in [1,2] }}

{# 变量判断 #}
{{ name is defined }}
{{ name is undefined }}
{# if判断  #}
{% if name is  defined %}
  {{ 'name is defined' }}
{% endif %}

{# if  elif #}
{% if name is  undefined %}
  {{ 'name is defined' }}
{% elif name|length > 2 %}
  {{'name length gt 2'}}
{% endif %}


{# 三元运算 #}
{{ 1 if 1>2 else 2 }}
{# for 循环 #}
{% for i in ['a','b'] %}
    {{ i }}
{% endfor %}

{# 正常for 循环会执行换行操作,可以添加 减号取消换行#}
{% for i in ['a','b'] -%}
    {{ i~' ' }}
{%- endfor %}

{% for i in range(10) -%}
    {{ i~' ' }}
{%- endfor %}
{# 定义宏,可以理解为是jija2 中定义的函数 #}
{% macro test() %}
    rest1 string
{% endmacro %}

{{ test() }}


{# 带参数的宏 #}
{% macro test(name) %}
    hello {{ name }}
{% endmacro %}

{{ test('wangendao') }}
{# 带默认值参数的宏 #}
{% macro test(name='zhangsan') %}
    hello {{ name }}
{% endmacro %}

{{ test() }}

标签:name,defined,macro,基础,语法,jijia2,endfor,endmacro,test
From: https://www.cnblogs.com/wangend/p/17071054.html

相关文章

  • JavaGuide--基础篇
    包装类型的缓存机制了解么?Java基本数据类型的包装类型的大部分都用到了缓存机制来提升性能。Byte,Short,Integer,Long这4种包装类默认创建了数值[-128,127]的相应类......
  • React --- jsx语法规则
    jsx语法规则:1、定义虚拟dom时,不要写引号//创建虚拟DOM 1constVDOM=<h1><span>hello,react</span></h1> 2、标签中混入JS表达式时要用{}1//定义属性和标签内容2c......
  • 【openGauss实战3】基本概念及语法
    ......
  • TypeScript 常用语法实例 & 实用工具类型
    1.函数上声明返回值类型constuserInfoJson=require('./mock/user-info.json')interfaceResponse<T>{data:{module:T;resultCode?:any;}......
  • html5 二进制文件操作基础
    Blob、ArrayBuffer、File、fileReader、formData这些名词总是经常看到,这些名词里,Blob、ArrayBuffer、File可以归为一类,它们都是数据;而fileReader算是一种工具,用来读取数据......
  • Java基础学习08
    多态的使用及细节(2023-01-28)1.对象多态:对象多态涉及到向上转型和向下转型,首先对象多态格式为  父类类型父类引用=new子类(向上转型)运用此方法可以更方便维护代码......
  • 【基础】时间Date常用用法
    Date.now()和new.Date().getTime()都是获取1970年1月1日截止到现在时刻的时间戳。但是从性能上来讲Date.now()要快于new.Date().getTime()。Date.now()和Date.parse(date......
  • .gitignore 文件语法介绍
    .gitignore文件的作用AgitignorefilespecifiesintentionallyuntrackedfilesthatGitshouldignore.FilesalreadytrackedbyGitarenotaffected;seethe......
  • 网络基础
      关于因特网一些概念    1.网络由若干节点和连接这些节点的链路组成。网络中的节点可以是计算机,集线器,交换机或路由器等。    2.网络和网络还可以......
  • 代码随想录算法训练营第十天 | 理论基础,232.用栈实现队列,225. 用队列实现栈
    一、参考资料理论基础文章讲解:https://programmercarl.com/%E6%A0%88%E4%B8%8E%E9%98%9F%E5%88%97%E7%90%86%E8%AE%BA%E5%9F%BA%E7%A1%80.html用栈实现队列题目链......