关于Loading不能正常显示的问题

关于Loading不能正常显示的问题

不联网状态下不获取数据,banner区、广告新鲜甩尾类似区域的loading不能正常显示。机酒自由行类似区域可以正常显示。结构都是类似的,不知道为什么,请老师帮忙解答

相关截图:

https://img1.sycdn.imooc.com//climg/61d8e75d098eb06003510134.jpghttps://img1.sycdn.imooc.com//climg/61d8e768093ff00903870133.jpg

相关代码:新鲜甩尾

xxsw.art

<div class="hd clearfix">
    <h2>新鲜甩尾</h2>
    <em>每日不可不看的好货</em>
</div>
<div class="bd">
    <%include ('../../../../components/loading/loading.art',{
        inline:true,
        text:'>_\<\正在拼命为您加载中...'
    })%>
</div>

相关代码:items.art

<ul>
    {{each items}}
    <li>
        <a href="">
            <div class="picbox">
                <img src="{{$value.url}}" alt="">
            </div>
            <div class="wordbox">
                {{$value.title}}
            </div>
        </a>
    </li>
    {{/each}}
</ul>

相关代码:index.js

import './xxsw.css';

import render from './items.art';
import {URL} from './config';
import {getData} from 'api/getData';

const layoutEl=document.querySelector('.xxsw .bd');

getData(URL).then(data=>{
    // console.log(data);
    layoutEl.innerHTML=render({items:data});
})

相关代码:xxws.css

.xxsw .loading{
    padding-top: 250px;
}
.xxsw .hd{
    margin-bottom: 32px;
}

.xxsw .hd h2{
    float: left;
   
}

.xxsw .hd em{
    float: left;
   
}
.xxsw .bd ul li{
    float: left;
    width: 264px;
    height: 270px;
    margin-right: 32px;
    background-color: white;
    margin-bottom: 32px;
}
.xxsw .bd ul li:nth-child(4n){
    margin-right: 0;
}
.xxsw .bd ul li .wordbox{
    padding: 15px;
    color: #1c1f21;
    font-size: 14px;
}
.xxsw .bd ul li:hover{
    box-shadow: 0 8px 16px 0 rgba(0, 0, 0, 0.2);
}


正在回答

登陆购买课程后可参与讨论,去登陆

1回答

同学你好,不联网的状态下,项目是无法正常显示的,因此老师测试了不渲染数据的情况:

https://img1.sycdn.imooc.com//climg/61d8f5c109e3e3b809100184.jpg

此时,新鲜甩尾能正常加载loading:

https://img1.sycdn.imooc.com//climg/61d8f4ed0978017a18560732.jpg

建议同学在作业中放一个txt文件,并把问题描述在txt中,然后将作业其他部分写完并提交上来。批复作业的老师,会根据同学的代码为同学解答的。

祝学习愉快!

  • 临溪而渔wml 提问者 #1
    不渲染数据的情况下,为什么机酒自由行不注释可以显示lodading
    jjzyx.art*********************************************************************************
    <div class="hd clearfix">
                    <h2>机酒自由行</h2>
                    <em>挑选全球机票、酒店、邮轮等旅行产品</em>
                    <nav>
                        <ul>
                            <li class="current"><a href="">近期好货</a></li>
                            <li><a href="">新品汇聚</a></li>
                            <li><a href="">定制游</a></li>
                            <li><a href="">国内推荐</a></li>
                            <li><a href="">优惠机票</a></li>
                            <li><a href="">热门海岛</a></li>
                            <li><a href="">热门海岛</a></li>
                            <li><a href="">热卖签证</a></li>
                        </ul>
                    </nav>
    </div>
    <div class="bd">
        <%include ('../../../../components/loading/loading.art',{
            inline:true,
            text:'>_\<\正在拼命为您加载中...'
        })%>
    </div>
    items.art*********************************************************************************
    <ul>
        <li class="big-grid">
            <a href="">
                <img src="{{one.url}}" alt="">
            </a>
            <span class="tag">{{one.type}}</span>
            <div class="info">
                <p>{{one.title}}</p>
                <p>{{one['extra-info']}}</p>
            </div>
        </li>
        {{each items}}
        <li class="pro-grid">
            <a href="">
                <div class="picbox">
                    <span class="tag">{{$value.type}}</span>
                    <img src="{{$value.url}}" alt="">
                </div>
                <div class="wordbox">
                    {{$value.title}}
                </div>
            </a>
        </li>
        {{/each}}
        <li class="more-grid">
            <a href="">
                <p>查看更多</p>
                <p>{{more.title}}</p>
                <span class="iconfont">&#xe626;</span>
                <ul class="clearfix">
                    {{each more.items}}
                    <li>{{$value}}</li>
                    {{/each}}
                </ul>
            </a>
        </li>
    </ul>
    index.js*********************************************************************************
    import './jjzyx.css';
    import render from './items.art';
    import {URL} from './config';
    import {getData} from 'api/getData';
    const layoutEl=document.querySelector('.jjzyx .bd');
    getData(URL).then(data=>{
        // console.log(data);
        layoutEl.innerHTML=render(data)
    })
    jjzyx.css************************************************************************************
    .jjzyx .loading{
        padding-top: 250px;
    }


    2022-01-08 11:26:05
  • 好帮手慕久久 回复 提问者 临溪而渔wml #2

    同学你好,老师要了一份你的作业,把同学提供的xxsw和jjzyx的代码都放到了作业中,二者loading效果都是正常的:

    https://img1.sycdn.imooc.com//climg/61d91b9809be829215070568.jpghttps://img1.sycdn.imooc.com//climg/61d91ba00971761313120576.jpg



    如果网络速度很快,那么网络请求会非常快的完成,此时就可能发生看不到loading图(有loading,但是瞬间就被数据替换了);如果之前请求过数据,那么再次请求,浏览器可能会使用缓存,此时数据几乎会瞬间返回,也容易看不到loading图。所有老师第一次测试时,把渲染数据的代码注释了,就是为了看看到底有没有loading图。另外,同样的网络下,每个请求的时间也是不一样的,机酒自由行的请求时间如果长,那么就可以轻松看到loading;同理如果xxsw的接口响应特别快,那么请求时间就特别短,此时就看不到loading了。

    建议同学把getData方法,换成getDelayedData方法测试一下效果(getDelayedData会延时渲染数据,相当于增加了请求时长):

    https://img1.sycdn.imooc.com//climg/61d91c3b09d1ba2b07820212.jpg

    祝学习愉快!

    2022-01-08 13:11:33
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师