这两天在改进网站的应用市场,发现评论的部分的图片一直不显示。经过仔细的分析研究,发现这个问题异常的诡异。ajax请求的图片路径是正确的,但是在页面的显示上面确多出了网站域名这一部分。

1,需要解决的问题


使用ajax请求数据,将数据注入到模板引擎,但在最终的页面显示。但发现图片并不能正常显示。查看源码发现系统自动在图片的前面增加了域名。如图:

2,问题的产生


由于系统开启了图片懒加载插件,开始很大一部分时间重点放到了懒加载插件上面。但最终发现这个问题和懒加载插件无关。而是一个简单的错误。评论部分的代码是由ajax请求数据,再经过模板引擎渲染输出的。

模板引擎的代码如下:

<!--用户图片 -->
<div class="ctm-item-user">
<img class="zavatar" src="/{{ item.avatar }}" />
<span class="u-name">{{ item.name}}</span>
</div>

 ajax请求数据返回结果如下:

按照道理,上面的代码一点问题都没有。但执行的结果请并不正确。

3,解决方案


经过2个小时的分析,最终发现是模板引擎多加了引号。

将 <img class="zavatar" src="/{{ item.avatar }}"  /> 修改为 <img class="zavatar" src={{ item.avatar }} /> 问题解决。

 

作者: 樱木花道

Joomla程序员,从J1.5到J4.x始终都在做Joomla相关开发定制工作,有超过10年行业经验,国内Joomla扩展开发商ZMAX团队的核心成员

作者网站:ZMAX程序人

评论 (0)

  • 最新在前
  • 最佳在前