更新记录

1.0.5(2024-06-14)

调整iOS平台组件内的默认样式

1.0.4(2024-05-24)

  • 修复 Android uni-app x 正式包模式下,可能不展示动画的Bug

1.0.3(2024-04-11)

修复Android平台 修正组件名称为 animation-view

查看更多

平台兼容性

HbuilderX/cli最低兼容版本
3.7.0

uni-app

Vue2 Vue3
?
app-vue app-nvue app-android app-ios
? ? ? ?
H5-Safari Android Browser 微信浏览器(Android) QQ浏览器(Android) Chrome IE Edge Firefox PC-Safari
? ? ? ? ? ? ? ? ?
微信小程序 支付宝小程序 百度小程序 字节小程序 QQ小程序 钉钉小程序 快手小程序 飞书小程序 京东小程序
? ? ? ? ? ? ? ? ?
快应用-华为 快应用-联盟
? ?

uni-app x

app-android app-ios
? ?
H5-Safari Android Browser 微信浏览器(Android) QQ浏览器(Android) Chrome IE Edge Firefox PC-Safari
? ? ? ? ? ? ? ? ?

animation-view

animation-view组件是uts组件插件,需 HBuilderX 3.7.0+

使用文档:https://uniapp.dcloud.net.cn/component/animation-view.html

属性说明

属性名 类型 默认值 说明
path String 动画资源地址,支持本地路径和网络路径
loop Boolean false 动画是否循环播放
autoplay Boolean true 动画是否自动播放
action String play 动画操作,可取值 play、pause、stop
hidden Boolean true 是否隐藏动画
@bindended EventHandle 当播放到末尾时触发 ended 事件(自然播放结束会触发回调,循环播放结束及手动停止动画不会触发)

注意

  • animation-view 组件在uni-app项目中仅nvue页面支持(vue页面不支持),在uni-app x项目中uvue页面支持
  • App端实现使用了Lottie三方SDK,参考开源项目:Lottie for AndroidLottie for iOS
  • App-Android平台要求Android5(API Leavel 21)及以上系统
  • App-iOS平台要求iOS11及以上版本系统

代码示例

<template>
    <div>
        <animation-view class="animation" :path="path" :loop="loop" :autoplay="autoplay" :action="action"
            :hidden="hidden" @bindended="lottieEnd">
        </animation-view>
        <button @click="playLottie" type="primary">{{status}}lottie动画</button>
    </div>
</template>

<script>
    export default {
        data() {
            return {
                path: 'https://b.bdstatic.com/miniapp/images/lottie_example_one.json',
                loop: false,
                autoplay: false,
                action: 'play',
                hidden: false,
                status: '暂停'
            }
        },
        methods: {
            playLottie() {
                this.action = ('play' !== this.action) ? 'play' : 'pause';
                this.status = ('pause' === this.action) ? '播放' : '暂停';
            },
            lottieEnd() {
                this.status = '播放';
                this.action = 'stop';
                console.log('动画播放结束');
            }
        }
    }
</script>

<style>
    .animation {
        width: 750rpx;
        height: 300rpx;
        background-color: #FF0000;
        margin-bottom: 20px;
    }
</style>

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

插件不采集任何数据

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

许可协议

MIT协议

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问