Skip to content
On this page

组件库文档 tmui.design

纵向滚动 Scrolly 试验 v3.0.83+

横向滚动,应用于菜单图标,内容需要横向滚动的场景,注意:我已经兼容了所有平台,如果你需要使用原生的scroll-view横向滚动,需要自行兼容。


🌶️ 纵向滚动 Scrolly 示例效果

查看模拟效果
示例代码
vue
<template>
	<tm-app>
		<tm-sheet>
			<tm-text :font-size="32" label="纵向滚动,也可称之为下拉,触底刷新组件"></tm-text>
			<tm-divider></tm-divider>
			<tm-text label="不支持在pc端使用.请在移动端查看效果,在nvue端使用的是原生高性能下拉组件,非nvue端使用自定下拉组件."></tm-text>
			<tm-scrolly :refresher="false" v-model="pull" v-model:bottom-value="bottomFresh" @refresh="refresh" @bottom="refreshBottom">
				<tm-text label="触摸区域,体验下拉刷新操作."></tm-text>
				<view v-for="(item, index) in 50" :key="index" style="height: 40px" class="px-36">
					<text>{{ item }}</text>
				</view>
			</tm-scrolly>
		</tm-sheet>
	</tm-app>
</template>

<script lang="ts" setup>
import tmApp from '../../tmui/components/tm-app/tm-app.vue'
import tmScrolly from '../../tmui/components/tm-scrolly/tm-scrolly.vue'
import tmText from '../../tmui/components/tm-text/tm-text.vue'
import tmDivider from '../../tmui/components/tm-divider/tm-divider.vue'
import tmSheet from '../../tmui/components/tm-sheet/tm-sheet.vue'
import { onMounted, ref } from 'vue'
const pull = ref(false)
const bottomFresh = ref(false)
function refresh() {
	setTimeout(function () {
		pull.value = false
	}, 1500)
}
function refreshBottom() {
	bottomFresh.value = true
	uni.showLoading({ title: '...', mask: true })
	setTimeout(function () {
		bottomFresh.value = false
		uni.hideLoading()
	}, 1500)
}
</script>

<style></style>

🌶️ 兼容性

APP-VUEAPP-NVUE小程序WEB/H5VUE3/TS
✔️✔️✔️✔️✔️

🌱 参数

本组件含有公共属性 公共属性

参数名类型默认值描述
widthNumber0宽度,单位rpx,默认为0表示自动宽度
heightNumber300高度,单位rpx
loadingTextsString['下拉刷新', '松手刷新', '正在刷新', '刷新完成']提示文字
maxBarHeightNumber120高度,单位px
refreshTimeoutNumber1000*5刷新超时时间,单位毫秒
modelValuebooleannull等同v-model,下拉状态,触发刷新时,请手动管理这个状态,如果不管理按照上面的超时自动管理
defaultValuebooleanfalse默认的下拉状态
loadBarHeightNumber120下拉多少高度触发,单位px
bottomValuebooleannull等同v-model:bottom-value,触底加载状态。请手动管理这个状态,如果不管理按照上面的超时自动管理
refresherbooleantrue开启下拉刷新 值为 true 表示开启下拉刷新,值为 false 表示关闭下拉刷新

🌹 事件

事件名参数返回数据描述
refresh--松开时高度超过阈值则触发刷新
bottom--触底时触发
change--状态变化时触发
timeout--加载超时触发

🌽 slot插槽

插槽名数据类型描述

🥗 ref方法

💏 文档贡献