Loading 加载
加载动画,用于表示加载中的过渡状态。
代码演示
基础用法
<!-- 在页面内添加对应的节点 -->
<hd-loading ref="loading"></hd-loading>
<hd-button @click="onClick">打开loading(2s后自动关闭)</hd-button>
<script lang="ts" setup>
import { Loading } from '@/uni_modules/fant-mini-plus/components/hd-loading/types'
import { ref } from 'vue'
const loading = ref<Loading>() // loading ref
function onClick() {
loading.value?.showLoading({})
setTimeout(() => {
loading.value?.hideLoading()
}, 2000)
}
</script>
提示的内容
通过title
属性展示提示内容。
<hd-loading ref="loading"></hd-loading>
<hd-button @click="onClick">打开loading(2s后自动关闭)</hd-button>
<script lang="ts" setup>
import { Loading } from '@/uni_modules/fant-mini-plus/components/hd-loading/types'
import { ref } from 'vue'
const loading = ref<Loading>() // loading ref
function onClick() {
loading.value?.showLoading({
title: '加载中...',
})
setTimeout(() => {
loading.value?.hideLoading()
}, 2000)
}
</script>
动画类型
通过type
属性决定开启的loading
的动画类型,默认为flower
。
<hd-loading ref="loading"></hd-loading>
<hd-button @click="onClick">打开loading(2s后自动关闭)</hd-button>
<script lang="ts" setup>
import { Loading } from '@/uni_modules/fant-mini-plus/components/hd-loading/types'
import { ref } from 'vue'
const loading = ref<Loading>() // loading ref
function onClick() {
loading.value?.showLoading({
type: 'dot'
})
setTimeout(() => {
loading.value?.hideLoading()
}, 2000)
}
</script>
底色
通过background
属性控制loading
是否显示黑色底色,默认true
。
<hd-loading ref="loading"></hd-loading>
<hd-button @click="onClick">打开loading(2s后自动关闭)</hd-button>
<script lang="ts" setup>
import { Loading } from '@/uni_modules/fant-mini-plus/components/hd-loading/types'
import { ref } from 'vue'
const loading = ref<Loading>() // loading ref
function onClick() {
loading.value?.showLoading({
background: false
})
setTimeout(() => {
loading.value?.hideLoading()
}, 2000)
}
</script>
延迟展示
通过delayTime
属性控制loading
的延迟展示时间,默认0
,单位毫秒。
<hd-loading ref="loading"></hd-loading>
<hd-button @click="onClick">打开loading(2s后自动关闭)</hd-button>
<script lang="ts" setup>
import { Loading } from '@/uni_modules/fant-mini-plus/components/hd-loading/types'
import { ref } from 'vue'
const loading = ref<Loading>() // loading ref
function onClick() {
loading.value?.showLoading({
delayTime: 500
})
setTimeout(() => {
loading.value?.hideLoading()
}, 2000)
}
</script>
方法
方法名 | 说明 | 参数 | 返回值 |
---|---|---|---|
showLoading | 展示加载动画 | LoadingOptions | Loading 实例 |
hideLoading | 关闭加载动画 | - | - |
LoadingOptions
数据结构
showLoading
方法时,支持传入以下选项:
调用 参数 | 说明 | 类型 | 是否必填 | 默认值 |
---|---|---|---|---|
title | 提示的内容。 | String | false | - |
type | 动画类型,可选值:flower dot 。 | LoadingType | false | flower |
background | 是否黑色底色。 | Boolean | false | true |
delayTime | 延迟展延时展示时间,默认 0,单位毫秒 | Number | false | 0 |
onClick | 点击时的回调函数 | Function | false | - |
onOpened | 完全展示后的回调函数 | Function | false | - |
onClose | 关闭时的回调函数 | Function | false | - |
Props
Name | Description | Type | Required | Default |
---|---|---|---|---|
value | 是否展示 | Boolean | false | false |
title | 提示的内容 | String | false | - |
type | 动画类型 | 'flower' / 'dot' | false | 默认值:flower |
background | 是否显示黑色底色,默认:true | Boolean | false | 默认值:true |
delayTime | 延时展示时间,默认0,单位毫秒 | Number | false | 0 |
Events
Event Name | Description | Parameters |
---|---|---|
update:modelValue | 消息展示状态变更时触发 | value:Boolean 消息展示状态,建议通过v-model双向绑定输入值,而不是监听此事件的形式 |