美文网首页
freemarker系列——常用语法(1)

freemarker系列——常用语法(1)

作者: 蜗牛君我们走 | 来源:发表于2019-05-27 20:04 被阅读0次

    1、常用的对变量进行判断的方法
    ?? 判断左侧变量是否为null,或者这个变量是否未定义。如:
    ?has_content 与??类似,但是它同时可以对空字符串或空list、空map进行判断。
    ! 用来给变量一个默认值,对于要输出显示的字符串,可以在后面只加一个!,从而可以使得为null的字符串显示为空,而不会报错
    ?if_exists 是??的老写法,已不建议使用。
    例:

    <#if statusMap["modify_user_id"]?? && statusMap["modify_time"]??>
           最新版本由${(statusMap["modify_user_id"])!}修改于${(statusMap["modify_time"])!}
    </#if>
    

    2、list的长度

    ${list?size}

    3、 list的遍历

    <#list nodeModel.alternative_list as alternativeValue>
          <option value="${(alternativeValue)!}">${(alternativeValue)!}</option>
    </#list>
    

    4、 遍历MAP

     <#list map?keys as k>
        <option value="${k}">${map[k]}</option>
    </#list>
    

    5、list遍历中的下标序号

    _index可取出当前元素的序号

    <#list list as a>
         ${a_index}
    </#list> 
    

    6、取list中第i个元素的值

    ${list[i]}

    嵌套时前面要有括号,如

     ${(str?split(","))[i]} 
    

    7、list排序
    升序: sort_by()
    降序 .sort_by()?reverse

    <#list list?sort_by("字段") as x>
    </#list>
    

    8.使用item_has_next进行判断

    <#list alternative_list  as alternativeValue>
      <#if !alternativeValue_has_next>
          最后一个是:${alternativeValue.value}
      </#if>
    </#list>
    

    相关文章

      网友评论

          本文标题:freemarker系列——常用语法(1)

          本文链接:https://www.haomeiwen.com/subject/sapmaqtx.html