更新记录

v0.1.0(2025-12-23) 下载此版本

首次上传


平台兼容性

uni-app(3.6.15)

Vue2 Vue3 Vue2插件版本 Chrome Safari app-vue app-nvue Android iOS 鸿蒙
- v0.1.0 - - - - - -
微信小程序 支付宝小程序 抖音小程序 百度小程序 快手小程序 京东小程序 鸿蒙元服务 QQ小程序 飞书小程序 快应用-华为 快应用-联盟
- - - - - - - - - - -

uniapp-lantern-release

一个基于 UniApp 的 放花灯 组件,适用于 H5,其他平台暂未测试。组件通过 requestAnimationFrame 实现花灯从底部向上飘动,并叠加左右摇摆动画,适合节日、活动氛围展示。

预览

安装使用

  1. 下载项目并引入组件
  2. 在页面中引入 lantern-release 组件
  3. 按需修改样式和配置参数
  4. 通过 ref 调用动画控制方法

示例代码

<template>
  <button @click="handleAddLight">放花灯</button>

  <LanternRelease imageUrl="/static/lantern-release/lantern.png" :speed="3" :swing="20" :width="'200px'"
    :height="'220px'" :startPosition="-220" ref="lanternRef" />
</template>

<script setup>
import { ref } from "vue";
import LanternRelease from "../../components/lantern-release/lantern-release.vue";

const lanternRef = ref();

function handleAddLight() {
  lanternRef.value?.startAnimation();
}
</script>

<style scoped></style>

API

参数

参数名 类型 默认值 说明
imageUrl string "" 花灯图片地址
speed number 5 上升速度(数值越大越快,基于 60fps 计算)
swingAmplitude number 10 摆动角度幅度(单位:deg)
swingSpeed number 500 摆动周期速度(值越小,摆动越快)
startPosition number -100 初始底部位置(px,负值表示屏幕外),需要大于花灯图片高度
endPosition number \| "screen-top" "screen-top" 终止位置,screen-top 表示完全离开屏幕
width string "80px" 花灯宽度
height string "100px" 花灯高度
horizontalPosition string \| "center" "center" 水平位置,如 "20%""100px"
autoStart boolean false 是否在组件挂载后自动开始动画
delay number 0 启动延迟时间(毫秒)

事件

事件名 说明
animationStart 动画开始时触发
animationEnd 花灯到达终点位置时触发
animationReset 调用重置方法时触发

实例方法

通过 ref 可调用以下方法控制花灯动画

方法名 参数 返回值 说明
startAnimation void 启动动画,重置位置并开始向上飘动
stopAnimation void 立即停止动画,保持当前花灯位置
resetAnimation void 重置花灯到初始位置,不播放动画
restartAnimation void 重置并重新启动动画

许可协议

MIT License,请查看项目根目录下的 LICENSE 文件。

隐私、权限声明

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

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

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

许可协议

MIT协议

暂无用户评论。