Weex加载数据缓冲旋转动画的实现

2023-10-30

Weex Ui已经上线了加载动画了点击这里跳转,手写的我眼泪都掉了下来!!!

由于Weex手机端不支持gif图片,然而公司项目又要我加个加载动画,所以手写了一个动画加载组件。

注意1:

需要用到组件不会用组件的可以点击看看这篇文章:Weex&&Vue组件的使用与传参

注意2:

mounted()方法还没调用接口的话就直接拉到文章最后面的篇章++看能不能解决你的问题

自定义旋转动画组件

在这里插入图片描述
整个组件的代码
(用到了weex封装的animation
const animation = weex.requireModule(‘animation’)
transform是旋转的圈数,duration是多少秒旋转完transform的圈数,可以自行修改处理)

<template>
  <div class="div-father" :style="{width:this.deviceWidth}">
    <div ref='rotate' class="div-img" :style="{top:this.top}">
      <image @click="rotate()" style="width:50px;height:50px" :src="domain+src" class="img"></image>
    </div>
  </div>
</template>
<script>
import domain from './../config.js'
const animation = weex.requireModule('animation')
export default {
  data() {
    return {
      src: '/img/loading.png',
      domain: domain,
      top: 200,
    }
  },
  methods: {
    rotate() {
      var rotate = this.$refs.rotate;
      animation.transition(rotate, {
        styles: {
          transform: 'rotate(360000deg)',
        },
        duration: 50000, //ms
      })
    }
  },
  mounted() {

    // 加载图标垂直居中
    var me = this;
    me.top = parseInt(me.realHeight) / 2 - 25;
    this.rotate();

  },
  created() {

  }
}
</script>
<style>
.div-father {
  background-color: black;
  opacity: 0.3;
  height: 1000px;
  position: absolute;
}
.div-img {
  width: 50px;
  position: relative;
  left: 350px;
}
.img {
  border-radius: 50%;
}
</style>
需用到页面的JS代码

引入缓冲加载组件
在这里插入图片描述
在这里插入图片描述

需用到页面的CSS

在最外层div的最后面引入组件,用v-if判断他什么时候显示动画,LoadingBuffer为自定义的Boolean值,在data()方法写就好,状态是false也就是不显示
在这里插入图片描述

<!-- 数据加载缓冲 -->
<LoadTheInterface v-if="LoadingBuffer"></LoadTheInterface>

在这里插入图片描述

最后就是判断它什么时候执行动画了

首先在mounted()方法开头打开动画
在这里插入图片描述
然后在mounted()方法需要调用接口最久的地方结束缓冲,如果你直接写在mounted()方法的最后面是不生效的,因为mounted()方法里是异步的也是执行的顺序不定的,一起执行的话动画还没开始就已经结束了,mounted()方法还没调用接口的话就直接拉到文章最后面的篇章++看能不能解决你的问题(开头已说明)
在这里插入图片描述

篇章++

逻辑是这样的:
当前页面不跳转:
页面A跳转到=》加载缓冲页=》页面A
当前页面跳转到另一个页面:
页面A跳转到=》加载缓冲页=》页面B
所以要用到延时器setTimeout,让它在缓冲页停留几秒后返回当前页

页面A点击某个方法路由跳转到加载缓冲页面并且带个log标识

this.$router.push({
    path: '/loadTheInterface',
    query: {
        log: 'addThePatient'
    }
})

加载缓冲页的代码和上面的代码是一样的只不过加了个路由判断

<template>
  <div class="div-father" :style="{width:this.deviceWidth}">
    <div ref='rotate' class="div-img" :style="{top:this.top}">
      <image @click="rotate()" style="width:50px;height:50px" :src="domain+src" class="img"></image>
    </div>
  </div>
</template>
<script>
import domain from './../config.js'
const animation = weex.requireModule('animation')
export default {
  data() {
    return {
      src: '/img/loading.png',
      domain: domain,
      top: 200,
    }
  },
  methods: {
    rotate() {
      var rotate = this.$refs.rotate;
      animation.transition(rotate, {
        styles: {
          transform: 'rotate(360000deg)',
        },
        duration: 50000, //ms
      })
    }
  },
  mounted() {

    // 加载图标垂直居中
    var me = this;
    me.top = parseInt(me.realHeight) / 2 - 25;
    this.rotate();
    
    // // 添加页=>加载页=>添加页
    if (this.$route.query.log == 'addThePatient') {
      setTimeout(res => {
        this.$router.push({
          path: '/addThePatient',
          query: {
            log: 'success'
          }
        })
      }, 800)

    }

  },
  created() {

  }
}
</script>
<style>
.div-father {
  background-color: black;
  opacity: 0.3;
  height: 1000px;
  position: absolute;
}
.div-img {
  width: 50px;
  position: relative;
  left: 350px;
}
.img {
  border-radius: 50%;
}
</style>

在加载缓冲页的mounted() 判断页面A传来的log,对应后让延迟800毫秒后跳回页面A,缓冲多少秒舒服自己修改

// // 添加页=>加载页=>添加页
if (this.$route.query.log == 'addThePatient') {
  setTimeout(res => {
    this.$router.push({
      path: '/addThePatient',
      query: {
        log: 'success'
      }
    })
  }, 800)

}

在这里插入图片描述

然后页面A跳转到=》加载缓冲页=》页面B的用法和页面A跳转到=》加载缓冲页=》页面A的用法大同小异改一下返回的路由地址就好了
                                   **希望能够帮上忙,珂珂**
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Weex加载数据缓冲旋转动画的实现 的相关文章

  • weex 项目上传服务器,Weex项目构建流程

    新建一个 package json 文件 xff0c 并且编写内容如下 xff1a 34 name 34 34 weex 34 34 version 34 34 1 0 0 34 34 description 34 34 34 34 mai
  • 厉害了,用 Java 也能实现图片识别!

    点击上方 Java基基 选择 设为星标 做积极的人 而不是积极废人 源码精品专栏 原创 Java 2020 超神之路 很肝 中文详细注释的开源项目 RPC 框架 Dubbo 源码解析 网络应用框架 Netty 源码解析 消息中间件 Rock
  • 企业为什么要融资和上市

    这里面涉及到两个概念 即融资和上市 让我们先来理理这两者之间的逻辑辩证关系 其实根据我们的观察和调研发现 目前市场上许多人对上市这件事有着十分魔性的认知 小A觉得上市前融资轮次越多越好 小B认为上市后就是为了圈钱 小C觉得IPO的速度越快越
  • 自定义Weex组件——Weex的学习之路(八)

    在四月份和五月份的时候我用业余时间来学习weex 在这期间一直在看文档写demo 每一个组件都自己写demo运行一遍 我本人是做Android开发的 对JS CSS和Html有一定的了解 所以学习weex不是很难 然后我把自己所学的主要经历
  • BroadcastChannel:weex跨页面通信

    场景如下 一个列表页面用于展示所有未完成的作业 点击列表的某一项 会跳转到该项作业的详细信息界面 可以在这里将作业标记为已完成 一旦标记后 列表中就不应该再存在此作业了 在这里 列表相当于一个主页面 详细信息界面是子页面 主界面浏览到第10
  • JavaScript 经典「红宝书」,几代前端人的入门选择

    文末有活动 人的一生中总要读几本经典书 在这个 经典 泛滥的年代 什么才是权威的代表 我想大概是一本的书的口碑 能积累下上佳口碑的书 往往也是能经得住时间推敲的 比如这本 我相信所有前端开发者的案头都有这样一本书 这本书最早的版本第 2 版
  • 为什么说“低估值买入,买到即赚到”?

    投资究竟能不能挣到钱 到底是由哪个环节决定的 买入还是卖出 直觉上说 这个问题的答案理所当然是 卖出 就连路边卖杂货的小商贩都明白 只要卖出价高于买入价 就可以挣到钱 直到我看了 穷查理宝典 接触到价值投资的理念 想法有了根本性改变 买入的
  • Weex内置组件的使用——Weex的学习之路(二)

    最近公司项目不是很忙 就和组内成员商量利用时间学学新技术 最终在Weex和Flutter做选择 Weex是由阿里的大牛们开发出来语言 Flutter是由Google公司开发的 各种网上查找得出的评论都是Flutter更有前景 但是最终我们还
  • Android 12上全新的应用启动API,适配一下?

    今日科技快讯 近日 谷歌宣布 将在欧洲市场上销售的Android手机中免费添加更多移动搜索应用 欧洲Android用户可以通过全新的 搜索引擎选项 来选择并设置自己设备上的默认搜索引擎 作者简介 本篇文章来自TechMerger同学的投稿
  • Weex加载数据缓冲旋转动画的实现

    Weex Ui已经上线了加载动画了点击这里跳转 手写的我眼泪都掉了下来 由于Weex手机端不支持gif图片 然而公司项目又要我加个加载动画 所以手写了一个动画加载组件 注意1 需要用到组件不会用组件的可以点击看看这篇文章 Weex Vue组
  • 程序猿做副业,偷偷告诉你个方法!请勿外传。

    身为程序猿 年轻的时候总觉得 只要我好好写代码 安心于技术 努力提高技能 即便不走管理者路线 在岗位上认真负责做出成绩 就能升职加薪 走上人生巅峰 到了三十多岁才发现 曾经太天真了 技术见长 头发变少 工资已经摸到天花板 但固定的开销必不可
  • 真香!27寸三星曲面屏写代码零Bug,包邮送一台!

    最近有粉丝留言让我多搞些抽奖活动 为了感谢大家对本公众号的大力支持本次联合了10个号主 送27寸三星曲面屏显示器 祝所有人新的一年工作顺利 工资芝麻开花节节高 希望本次抽奖可以给你带来好运 生活不易 望大家加倍努力 升职加薪 事业家庭双丰收
  • Weex页面的编写——Weex的学习之路(六)

    通过前几博客我们把weex的内置组件都学习完了 组件的单独使用想必都可以了 那么 这次我们来做weex实际页面的编写 见证一下 一套代码在Android Ios和H5上使用 在weex官网推荐我们使用Weex Studio作为编译器 其实这
  • 无线路由器及Wi-Fi组网指南(史上最全)

    白驹过隙 逝者如斯 经过断断续续几个月的更新 关于无线路由器和Wi Fi的介绍终于告一段落 其实 这个话题下还有很多很多的内容没有涉及到 然生有涯而知无涯 只能在此暂且搁笔 后续缘起再续 下面 正文开始 1 什么是无线路由器 在5 时代 手
  • weex 一个传说级巨坑-- 2018最新版weex踩坑指南(weex navigator 多界面跳转)

    先说结论 本人极度非常 不推荐weex作为任何商用开发 有很多人会说了 你瞎扯 你看别人阿里 啊飞猪 啊那个支付宝 人家不是用得好好的么 当然这也是我们公司作为技术选型的考量 三端通用 阿里系的app全线在用 理论上是可以实现的 而且我们在
  • weex组件的样式:不可使用间接筛选器

    weex本身自带了很多vue中没有的组件 例如
  • 陀螺研究院×BSN丨解析区块链视角下的消费者权益保护访谈全文发布

    3月是我国消费者权益保护月 在近日播出的3 15晚会中 央视曝光了科勒卫浴 宝马 Max Mara多家知名商店安装人脸识别摄像头 手机清理软件泄露老人隐私 瘦肉精羊等多个极其恶劣的消费者权益侵害行为 可以看出 随着数据时代的渐行渐近 消费者
  • 阿里把中台变薄,背后逻辑是什么?

    颠覆式创新怎么做 中台适合做组合式创新 不适合做颠覆式创新 那么颠覆式创新如何做呢 各家巨头做法不太一样 腾讯使用 赛马机制 马化腾没有想到 10年前的那场 赛马 最后跑出来的是一个叫张小龙的人和他所带领的 微信 团队 而他们此前 从来没做
  • RateLimiter 的底层实现是啥?

    点击上方 Java基基 选择 设为星标 做积极的人 而不是积极废人 源码精品专栏 原创 Java 2020 超神之路 很肝 中文详细注释的开源项目 RPC 框架 Dubbo 源码解析 网络应用框架 Netty 源码解析 消息中间件 Rock
  • Weex实现富文本展示

    Weex默认不支持富文本展示 需要我们手动实现 已知的方式有两种 第一种方式 使用Weex Ui中的wxc rich text组件 它提供了丰富的功能样式 但是其局限性也是显而易见的 不能直接识别h5样式 第二种方式 第一步 自定义组件 请

随机推荐

  • 数据库删除数据的方式

    数据库删除数据的方式主要是有三种 drop delete truncate 他们之间的区别在于 1 删除的内容不同 drop 用于删除数据库 数据表 以及 删除数据表中的字段 删除数据库 drop database 数据库名 删除数据表 d
  • Numpy、Pandas使用大全与各参数详解

    目录 一 numpy 1 属性 方法与操作 1 属性 2 方法 3 操作 2 文件读取与保存 1 文件读取 2 文件保存 3 矩阵生成 二 Pandas 1 属性与方法 1 属性 2 方法 2 数据选取 1 取行 2 取列 3 数据处理 1
  • 遇到问题----shrio------shiro登录,多个项目session被覆盖问题---两个web项目会导致shiro的session污染

    情况 遇到问题 shrio shiro登录 多个项目session被覆盖问题 一个项目两个web模块会导致shiro的session污染 表现为 我在同一台机子上部署了两个都使用了shiro管理的web项目 它们的访问路径除了端口不一样 i
  • PaddleDetection算法分析(13)

    2021SC SDUSC 分析完了PaddleDetection的竞赛冠军模型 接下来分析移动端模型 PaddleDetection目前提供一系列针对移动应用进行优化的模型 主要支持以下结构 其中大量网络应用了ssd算法 我们接下来进行对其
  • CPU密集型和IO密集型任务的权衡:如何找到最佳平衡点

    关于作者 CSDN内容合伙人 技术专家 从零开始做日活千万级APP 专注于分享各领域原创系列文章 擅长java后端 移动开发 人工智能等 希望大家多多支持 目录 一 导读 二 概览 三 CPU密集型与IO密集型 3 1 CPU密集型 3 2
  • Vue 刷新当前页面,并重新加载页面数据

    业务场景 在管理后台 在执行完 增 删 改 操作的时候 我们需要刷新一下页面 重载数据 在JQ中我们会用到location reload 方法 刷新页面 在vue中 这里需要用到一个 provide inject 这对用例 其他方法 thi
  • 还在纠结芯片引脚需要加多大容值的电容吗?

    电容具有滤波的作用 应该是每个硬件工程师都具备的最基础的知识了 在一些芯片IO口 我们能看到0 1UF 100NF 4 7UF容值的滤波电容 电容 一个小小的物料 其容值的选取往往在硬件电路设计以及仿真中起到了非常重要的作用 在电容进行滤波
  • winfrom 操作Excel

    利用 Aspose Cells dll 操作Excel 内容如下 1 界面设计 2 逻辑 using System using System Collections Generic using System Windows Forms us
  • 【test】

    这里写自定义目录标题 欢迎使用Markdown编辑器 新的改变 功能快捷键 合理的创建标题 有助于目录的生成 如何改变文本的样式 插入链接与图片 如何插入一段漂亮的代码片 生成一个适合你的列表 创建一个表格 设定内容居中 居左 居右 Sma
  • C++ 猜数字游戏的提示(详解)

    实现一个经典 猜数字 游戏 给定答案序列和用户猜的序列 统计有多少数字位置正确 A 有多少数字在两个序列都出现过但位置不对 B 输入包含多组数据 每组输入第一行为序列长度n 第二行是答案序列 接下来是若干猜测序列 猜测序列全0时该组数据结束
  • 如何使用tensorboard及打开tensorboard生成文件

    一 使用tensorboard tensorboard中常用函数 1 writer add scalar def add scalar self tag scalar value global step None walltime None
  • SQL Server 如何清空数据库所有表数据

    1 清空SQL Server数据库中所有表数据 1 编写存储过程脚本 CREATE PROCEDURE sp DeleteAllData AS EXEC sp MSForEachTable ALTER TABLE NOCHECK CONST
  • 杂项设备(misc device)

    杂项设备 misc device 杂项设备也是嵌入式系统中用得比较多的一种设备驱动 在 Linux 内核的include linux目录下有miscdevice h文件 要把自己定义的misc device从设备定义在这里 其实是因为这些字
  • PAT C入门题目-7-103 查找书籍 (20 分)(struct的应用)

    7 103 查找书籍 20 分 给定n本书的名称和定价 本题要求编写程序 查找并输出其中定价最高和最低的书的名称和定价 输入格式 输入第一行给出正整数n lt 10 随后给出n本书的信息 每本书在一行中给出书名 即长度不超过30的字符串 随
  • 从内核文件系统看文件读写过程

    阅读目录 系统调用 虚拟文件系统 I O 缓冲区 Page Cache Address Space 文件读写基本流程 回到顶部 系统调用 操作系统的主要功能是为管理硬件资源和为应用程序开发人员提供良好的环境 但是计算机系统的各种硬件资源是有
  • 计算二叉树的深度和结点个数

    计算二叉树的深度和结点个数以及叶子结点的个数 二叉树的深度呢指的是二叉树中最大的结点层数 这个很好理解的 而二叉树的结点包含一个数据元素及两个指向子树的分支 叶子结点呢就是树底下没有一个分支的结点 include
  • 彻底解决安装包过程中的Requirement already satisfied:问题

    问题如图 安装库总是提示大量类似Requirement already satisfied paddle in f anapython lib site packages 1 0 2 的信息 对此问题 需要指定安装目录 格式 pip ins
  • oracle 存储过程的基本语法 及注意事项

    oracle 存储过程的基本语法 1 基本结构 CREATE OR REPLACE PROCEDURE 存储过程名字 参数1 IN NUMBER 参数2 IN NUMBER IS 变量1 INTEGER 0 变量2 DATE BEGIN E
  • 大学生必备的网址

    飞达简历网http www jianlishop com 精美的简历设计网站 大量XXXXX资源 无忧简历网http www 51jianli com 收费简历设计网站 我的简历http www wdjl net XXXXX提供电子简历 视
  • Weex加载数据缓冲旋转动画的实现

    Weex Ui已经上线了加载动画了点击这里跳转 手写的我眼泪都掉了下来 由于Weex手机端不支持gif图片 然而公司项目又要我加个加载动画 所以手写了一个动画加载组件 注意1 需要用到组件不会用组件的可以点击看看这篇文章 Weex Vue组