(一)处理不存在的变量


不论在哪里引用变量, 都可以指定一个默认值来避免变量丢失这种情况, 通过在变量名
后面跟着一个 ! 和默认值。就像下面的例子,当 user 从数据模型中丢失时,模板将会将
user 的值表示为字符串 ”Anonymous” 。 (若 user 并没有丢失,那么模板就会表现
出 ”Anonymous” 不存在一样) :

<h1>Welcome ${user!"Anonymous"}!</h1>

当然也可以在变量名后面通过放置 ?? 来询问 FreeMarker 一个变量是否存在。将它和 if
指令合并,那么如果 user 变量不存在的话将会忽略整个问候代码段:

<#if user??><h1>Welcome ${user}!</h1></#if>

关 于 多 级 访 问 的 变 量 , 比 如 animals.python.price , 书 写 代 码 :
animals.python.price!0 ,仅当 animals.python 存在而仅仅最后一个子变
量 price 可能不存在(这种情况下我们假设价格是 0) 。如果 animals 或者 python
不存在, 那么模板处理过程将会以 “未定义的变量” 错误而停止。 为了防止这种情况的发生,
可以这样来书写代码 (animals.python.price)!0 。这种情况下当 animals 或
python 不存在时表达式的结果仍然是 0。对于??也是同样用来的处理这种逻辑的:
animals.python.price?? 对比 (animals.python.price)?? 来看。

优质内容筛选与推荐>>
1、UNITY 复制对象后局部坐标和世界坐标的变化问题
2、团队任务1 - 第一次会议
3、第十周课程总结
4、前端常用CSS小技巧
5、007——php字符串中的处理函数(六)


长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号