UNPKG

sard-uniapp

Version:

sard-uniapp 是一套基于 Uniapp + Vue3 框架开发的兼容多端的 UI 组件库

72 lines (46 loc) 2.22 kB
--- nav: 组件 title: Marquee subtitle: 跑马灯 group: 活动组件 version: 1.2+ --- ## 介绍 让文字无缝循环滚动。 ## 引入 ```ts import Marquee from 'sard-uniapp/components/marquee/marquee.vue' ``` ## 代码演示 ### 基础使用 为了实现无缝的循环滚动,需要提供两份数据。 @code('${DEMO_PATH}/marquee/demo/Basic.vue') ### 异步数据 `Marquee` 组件是通过 `animation` 来实现高效的滚动动画的, 会根据内容高度或宽度动态设置动画时长,以实现固定速率滚动。 @info <sup>1.20</sup>之前,如果 `Marquee` 挂载时机比插槽内容靠前,即插槽内容数据需要通过接口异步获取再渲染的, 需要手动调用 `update` 方法来更新动画时长。 <sup>1.20</sup>之后,会监听内容尺寸变化,自动调用更新方法,无需手动调用。 @endinfo @code('${DEMO_PATH}/marquee/demo/Async.vue') ### 水平方向 可以设置 `direction="horizontal"` 属性实现水平方向的滚动。 @code('${DEMO_PATH}/marquee/demo/Horizontal.vue') ## API ### MarqueeProps | 属性 | 描述 | 类型 | 默认值 | | ---------- | --------------------------------------------------- | -------------------------- | ---------- | | root-class | 组件根元素类名 | string | - | | root-style | 组件根元素样式 | StyleValue | - | | direction | 动画滚动方向 | 'vertical' \| 'horizontal' | 'vertical' | | speed | 滚动速率 (px/s) | number | 50 | | delay | 挂载后,延迟动画时间(单位 ms),避免进入页面时卡顿 | number | 1000 | ### MarqueeSlots | 插槽 | 描述 | 属性 | | ------- | -------------- | ---- | | default | 自定义默认内容 | - | ### MarqueeExpose | 属性 | 描述 | 类型 | | ------ | ------------ | ---------- | | update | 重置滚动时长 | () => void |