最新消息:文章中包含代码时,请遵守代码高亮规范!

twig模板中设置变量与拼接字符串【原创】

HTTP Liam 820浏览 0评论

设置变量:

比如说一个用户简介页面,里面有关于用户的所有简介,这个时候后端在dump中给一个数组,根据数组取值,假设最外层有一个data,data里面有个info, info里面包含了用户的信息,如果用户的姓名为name,这个时候我们取值的话应该是

{{ data.info.name }}

这样的话就会很繁琐,所以我们不妨在头部设一个变量,这个时候就用到了twig中的 set

用法:

{% set i = data.info %}

姓名:{{ i.name }}

这样的话就取到了name的值
值得注意的是,set 只能在一块继承里面,比如说我继承了body, 那么set就应该在body里面写,如

{% block body %}
{% set i = data.info %}

姓名:{{ i.name }}

{% endblock %}

如果把set放到外边的话,就会引起报错

2、字符串拼接:

在js中,字符串拼接是用 “+” “””拼接的,但是在有些项目中用js拼接会特别复杂,而且代码量大,容易出错,不易维护,所以我们如果可以在twig中直接拼接的话,就会省很多事,而且有利于维护
在twig中会用到 “~” ,这个符号就是字符与字符之间拼接的桥梁:
假设我现在在一个文件夹里面有5张图片,分别是1.png、2.png……5.png,然后我们循环,读取路径

{% for key,list in data.info.stove_array %}
 {% set i = key + 1 %}
 {% set url = 'assets/pc/img/stove/' ~ i ~ '.png' %}
<img src="{{ asset(url) }}" class="style-img" >
{% endfor %}

上面代码意思是先set一个变量  i对应的就是1、2…一直到数组的最后
url也是set的一个变量,后面的字符串就是通过’ ~  ‘来拼接的,这样的话就拼出了每一个数据对应的图片路径,就达到了我们预期的效果。

 

转载时请注明出处及相应链接,本文永久地址:http://blog.it985.com/21320.html


pay_weixin
pay_weixin
微信打赏
pay_weixin
支付宝打赏
感谢您对作者Liam的打赏,我们会更加努力!    如果您想成为作者,请点我

您必须 登录 才能发表评论!