2020-12-13

大事件前台页面的实现

热点图的渲染步骤
1静态结构
2发起ajax请求
3进行模板的赋值
4填充到页面指定位置

效果图
在这里插入图片描述

js发起ajax

// 热点图
// 3、热点图
// 请求地址:/index/hotpic
// 请求方式:get
$.ajax({
'http://127.0.0.1:8080/api/v1/index/hotpic',
dataType:"json",
success:function(res){
consloe.log(res)
if(res.code==200){
$(".focus_list").html(template("hotpicTemp",res))

}
}
})

热点图模板

<script type="text/template" id="hotpicTemp">
{{each data}}
//第一张和其他张的图片大小不一致所以判断一下是否为第一张给第一张加个first的类名
<li class="{{$index==0?'first':''}}">
<a herf="./article.html?id={{$value.id}}"<img src="{{$value.cover}}" alt=""></a>
                <p>{{$value.title}}</p>
    </li>
        {{/each}}
</script>

最新评论

效果
**在这里插入图片描述
**

最新评论模板

   <!-- 最新评论模板 -->
    <script type="text/template" id="commentTemp">
    {{each data}}
    <li>
         <!-- 用substring截取姓名的第一个字 -->
                <span>{{$value.author.substring(0,1)}}</span>
                <!-- $value.mdiff接口没有提供自己添加理论上不要覆盖已有的名字 -->
                <!-- $value.date.substring(5)截取到第5-->
                <b><em>{{$value.author}}</em>{{$value.mdiff}}个月前{{$value.date.substring(5)}}:</b>
                
                <strong>{{$value.intro}}</strong>
            </li>
    {{/each}}

**

发起ajax请求

 //评论
            $.ajax({
                url: 'http://127.0.0.1:8080/api/v1/index/latest_comment',
                dataType: 'json',
                success: function (res) {
                    console.log(res);
                    if (res.code == 200) {
                    //拿到当前的月份和年份
                        let currentYear = new Date().getFullYear()
                        //月份是从0开始的所以要记得加一
                        let currentMonth = new Date().getMonth() + 1
                        console.log(currentYear, currentMonth)
                        // 2.遍历数据,获取每一个数据中的  年  和 月,计算出月的差异
                        for (let i = 0; i < res.data.length; i++) {
                            let y = (currentYear - new Date(res.data[i].date).getFullYear()) * 12  // 年份所代表的月的差异
                            let m = currentMonth - (new Date(res.data[i].date).getMonth() + 1) // 月的差异
                            // 改造数据的原则:不修改原始数据,而是添加新的成员
                            res.data[i].mdiff = y + m
                        }
                        //进行模板的填充到页面
                        $('.comment_list').html(template('commentTemp', res))
                    }
                }
            })
        })

**

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值