Skip to content

Loading 加载动画组件

此组件为一个小动画,目前用在华玥的loadMore加载更多等组件的正在加载状态场景。

温馨提示

本项目参考了 uView-Plus 开源项目的组件开发方式,基于 Vue 3 和 TypeScript 实现了自定义组件。目前该组件仍处于测试阶段。
感谢 uView-Plus 开源项目及其团队成员的贡献,他们的组件开发思路为本项目提供了宝贵地参考。如果需要了解更多组件开发细节,可以参考uView-Plus的 loadingIcon 的代码实现。

平台差异说明

APP(vue)H5微信小程序

基本使用示例

html
<!-- 全局使用 -->
<hy-loading text="月落"></hy-loading>
<!-- 单个组件引入 -->
<HyLoading type="primary">按钮</HyLoading>
ts
import { HyLoading } from "hy-app"

动画文字

  • 通过配置text可以指定文字内容
  • 通过配置textSize可以指定文字大小
html
<template>
    <hy-loading text="加载中..." textSize="18"></hy-loading>
</template>

模式类型

  • 通过配置mode可以指定模式
    • spinner配置花瓣(默认)
    • circle配置圆形
    • semicircle配置半圆
html
<template>
    <hy-loading mode="spinner"></hy-loading>
    <hy-loading mode="circle"></hy-loading>
    <hy-loading mode="semicircle"></hy-loading>
</template>

排列类型

  • 通过配置vertical可以指定文字和图标是否垂直排列
html
<template>
    <hy-loading></hy-loading>
</template>

动画模式

  • timing-function可以指定modesemicirclecircle时动画里css中animation-timing-function的属性,默认为ease-in-out
html
<template>
    <hy-loading timing-function="linear"></hy-loading>
</template>

动画运行时间

  • 通过配置duration可以指定动画的运行周期时间
html
<template>
    <hy-loading duration="2000"></hy-loading>
</template>

图标颜色

  • 通过配置color可以指定动画活动区域的颜色。
  • 通过配置inactive-color可以制定mode为circle时的暗边颜色
html
<template>
    <hy-loading color="red"></hy-loading>
    <hy-loading mode="circle" color="red"></hy-loading>
</template>

图标尺寸

  • 通过配置size设定尺寸,单位px,组件内把size值体现为组件的宽和高
html
<template>
    <hy-loading size="36"></hy-loading>
</template>

API

参数说明类型默认值
show是否显示动画booleantrue
color图标颜色string#909399
textColor提示文本颜色string#909399
vertical图标和文字是否垂直排列booleanfalse
mode模式选择[1]spinner|circle|semicirclespinner
size加载图标的大小,单位pxstring | number24
textSize加载文字的大小,单位pxstring | number15
text文字内容string-
timingFunction指定animation-timing-function的css属性,但只支持mode为circle或semicircle才有效ease-in-out|ease-out| ease-in|linear|easeease-in-out
duration动画执行周期时间,单位msnumber1200
inactiveColor图标的暗边颜色, mode为circle 模式有效string-
customStyle定义需要用到的外部样式string-
00:46

  1. spinner:花瓣形状;circle:圆形; small:小尺寸;semicircle:半圆 ↩︎