小程序实现一个全局的loadding效果

这篇具有很好参考价值的文章主要介绍了小程序实现一个全局的loadding效果。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言:

        小程序中实现一个全局的loadding效果,也可以根据具体的组件大小来调整他的高度。

实现效果:

1、整个页面

小程序实现一个全局的loadding效果

2、局部组件大小

小程序实现一个全局的loadding效果

 实现步骤:

1、 app.js中全局定义字段

App({
    globalData: {
        loadingImg:'https://xxxxxx/loading/loading.gif',//你的loadding图片地址
    }
})

2、components中建立loadding的文件信息,load为文件夹

小程序实现一个全局的loadding效果

 load/index.wxml

<view class="load-bg" style="{{'background-color:'+backgroundColor+';top:'+loaddingTop}}">
  <view class="load">
    <view class="load-box">
      <image class="load-box-img" src="{{loadingImg}}"></image>
    </view>
  </view>
</view>

  load/index.wxss

.load-bg{
  position: fixed;
  left:0;
  top:0;
  right: 0;
  bottom: 0;
  background-color: #fff;
  z-index: 9999;
}
.load{
  position: fixed;
  top: 50%;
  margin-top: -40rpx;
  width: 100%;
}
.load-box{
  height: 80rpx;
  /* margin: 0 112rpx; */
  text-align: center;
}
.load-box .load-box-img{
  width: 80rpx;
  height: 80rpx;
}

 load/index.js

// components/load/index.js
const app = getApp();
Component({
  /**
   * 组件的属性列表
   */
  properties: {
    loadinTime:{
      type:Number,
      value:0
    },
    //自定义loadding的top,这里是控制整个覆盖还是局部覆盖的核心
    loaddingTop:{
      type:Number | String,
      value:0
    }
  },

  /**
   * 组件的初始数据
   */
  data: {
    loadingImg:'',
    backgroundColor:'',
  },
  lifetimes: {
    created() {},
    attached() {},
    ready() {
      this.setData({
        loadingImg:app.globalData.loadingImg,
        backgroundColor:app.globalData.loadingBackgroundColor,
      })
      console.log('loading')
    },
  },
  /**
   * 组件的方法列表
   */

  methods: {}
})

 load/index.json

{
  "component": true,
  "usingComponents": {}
}

3、页面上具体使用:带自定义切换的页面

首页:   index文件夹

小程序实现一个全局的loadding效果

 index/index.wxml

<loading  wx:if="{{loadingFlag}}" />

index/index.js

data:{
    loadingFlag:true,
}
onLoad(options) {
    //关闭自定义tab切换
    this.getTabBar().setData({
       tabBarShow:false,
    })
}



//打开loadding
this.setData({
   loadingFlag:true
})


//关闭loadding 并 打开自定义tab切换
this.setData({
    loadingFlag:false
})
 this.getTabBar().setData({
      tabBarShow:true,
})

index/index.json

{
  "disableScroll": true,
  "usingComponents": {
      "loading":"../../components/load/index"  
  }
}

4、页面上具体使用:普通页面全局

cart 文件夹

cart/index.wxml

<loading  wx:if="{{loadingFlag}}" />

cart/index.js

//打开loadding
this.setData({
   loadingFlag:true
})
//关闭loadding
this.setData({
    loadingFlag:false
})

cart/index.json

 "usingComponents": {
    "loading":"../../components/load/index"
}

5、页面上具体使用:局部页面的loadding效果

wxml文章来源地址https://www.toymoban.com/news/detail-496643.html

<loading wx:if="{{loadingFlag}}" loaddingTop="{{loaddingTop}}"/>

js

data: {
    loadingFlag:true,
    loaddingTop:'88rpx'
  },

6、弹框上具体使用

wxml

<popup
  show="{{ show }}"
>
    <view slot="content" class="title-contant">
        <loading wx:if="{{loadingFlag}}"/>
    </view>
</popup>

到了这里,关于小程序实现一个全局的loadding效果的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【微信小程序】使用button组件来实现一个带有点击效果的按钮,按钮中间添加一个大的+号图标

    在微信小程序中,你可以使用 button 组件来实现一个带有点击效果的按钮,并在按钮中间添加一个大的+号图标。以下是一个示例代码: 在上述代码中,我们使用了微信小程序的 button 组件,并在其中添加了一个 text 组件,文本内容为+号。使用类名为 button 的样式设置了按钮的

    2024年02月16日
    浏览(60)
  • lua实现游戏全局鼠标点击效果

    最近在优化项目,策划提了一个需求,需要实现一个通用点击特效。 首先想到的是改变鼠标指针样式,这个以前学过,还有点印象,以前刚开始学unity的时候,记得看到过一个方法可以改变游戏中鼠标指针样式。 方法如下:选择“Edit”——“Project Setting”,打开项目设置 一

    2024年02月10日
    浏览(42)
  • vue el-table的每行操作el-button添加单独的loading效果实现

    实现就这么简单,一目了然。 你的压力来源于无法自律,只是假装努力,现状跟不上内心的欲望,所以你焦虑又恐惧。

    2024年02月13日
    浏览(55)
  • 一加11/Ace2/10Pro手机如何实现全局120HZ高刷-游戏超级流畅效果

    已经成功root啦。安卓13目前也一样支持LSPosed框架,如果你对LSP框架有需求,也可以使 自测120HZ刷新率诞生以后,很多小伙伴用上了就很难回来啦,一加11/Ace2/10Pro/9pro手 机厂商也对新机做了很多的适配,让我们日常使用起来更棒。虽然屏幕的确支持了120HZ高刷 但很多APP还是自

    2024年02月09日
    浏览(155)
  • Vue2封装自定义全局Loading组件

    前言 在开发的过程中,点击提交按钮,或者是一些其它场景总会遇到Loading加载框,PC的一些UI库也没有这样的加载框,无法满足业务需求,因此可以自己自定义一个,实现过程如下。 效果图 如何封装? 第1步:创建要封装成全局组件的文件 第2步:注册组件 Loading这类的通用

    2024年02月15日
    浏览(37)
  • 【Java】SpringBoot下写一个全局捕获异常的怎么实现?

    在日常项目开发中,异常是常见的,但是如何更高效的处理好异常信息,让我们能快速定位到BUG,是很重要的,不仅能够提高我们的开发效率,还能让你代码看上去更舒服,SpringBoot的项目已经对有一定的异常处理了,但是对于我们开发者而言可能就不太合适了,因此我们需要

    2024年02月16日
    浏览(42)
  • uniapp微信小程序全局所有页面放置一个跳转首页的可以拖动的悬浮按钮

    把上面的静态解构放到src/components/movable/movable.vuewe文件作为自定义组件 此处用的到时uniapp的movable-area组件和内嵌 movable-view 组件,其中movable-area表示可拖动的范围,movable-view用于指示可拖动的区域。 参照文档:movable-area | uni-app官网     movable-view | uni-app官网 想要实现每个页

    2024年02月03日
    浏览(46)
  • 记录--如何实现一个雨滴滑落效果

    下雨天坐在车窗前,看着雨滴顺着车窗渐渐落下,这一唯美的场景,忍不住想记录下来。最近在纠结电脑壁纸时,无意间看到有类似的场景,可以将自己喜欢的壁纸加上这种效果。作为多年切图仔,不由地想到了用css动画应该可以实现这一效果,于是,直接开干。先上效果图

    2024年02月19日
    浏览(33)
  • 记录--怎么实现一个3d翻书效果

    本篇主要讨论以下两种翻书动画的实现: 第一种是整页翻转的效果: 这种整页翻转的效果主要是做rotateY的动画,并结合一些CSS的3d属性实现。 第二种折线翻转的效果,如下图所示: 主要是通过计算页面翻折过来的位置。 这两种原理上都不是很复杂,需要各个细节配合好,

    2024年02月11日
    浏览(46)
  • echarts实现一个3d效果柱形图

    思路是: 通过数组循环生成多个echarts实例盒子,生成的柱形图只有一条数据,是由多个图表设置 barGap: \\\'-100%\\\' 实现重叠,并通过设置柱形图中间颜色到边上颜色的渐变形成类似3d的视觉效果,实际每一个柱形图是由以下几个图表实现的:⛽️ 内层背景的body(bar) 内层背景的

    2024年02月15日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包