Skip to content

Indexed (索引导航)

索引导航组件,用于显示索引列表,支持配置索引数据列表。

支持平台

安卓ios鸿蒙web微信小程序

示例代码

html
<template>
	<t-page title='索引导航(canvas绘制)' main-class='f' :scrollDisabled="true">
		<t-indexed main-class="f" type="e" :list="dataList" @select="select"></t-indexed>
		<t-card main-class='df dlb-0' title="索引导航"
			sub-title="长列表渲染非常考验开发技巧,采用list组件虽能自动回收,但首次加载会卡住非常影响体验,该插件采用canvas绘制,利用虚拟滚动原理,每次只会绘制屏幕可见的十几个数据,不会卡页面,但是样式会固定,如有更丰富界面UI需求需要付费定制"></t-card>
	</t-page>
</template>

<script>
	import { TuiApi } from '@/api'
	export default {
		data() {
			return {
				dataList: [] as UTSJSONObject[]
			};
		},
		created() {
			TuiApi('indexsortdata',{},true).then(res => {
				this.dataList = res['data'] as UTSJSONObject[]
			})
		},
		methods: {
			select(e : UTSJSONObject) {
				if (e.getString('letter') != null) {
					// 此逻辑点击了标题
					uni.showToast({
						title: e.getString('letter')!
					})
				} else {
					uni.showToast({
						title: e.getString('name')!
					})
				}
				console.log(e)
			}
		}
	}
</script>

属性

名称类型默认值说明可选值
sizeStringmini组件尺寸large(大尺寸), medium(中尺寸), small(小尺寸), mini(迷你)
typeString""组件类型info(信息), primary(正常), error(错误), warning(警告), success(成功)
disabledBooleanfalse组件是否禁用false, true
stopBooleanfalse是否阻止事件冒泡(Tui统一写法处理事件冒泡)false, true
hoverBooleantrue是否有点击效果false, true
pathString""点击组件后跳转的页面路径,如果为空则响应点击事件,如果不为空则跳转页面不会响应单击事件。-
mainClassString""组件根节点的样式-
nativeClassString""组件根节点原生样式-
effectString"normal"组件显示主题normal(正常), dark(深色), light(浅色), plain(镂空)
listany``数据源

事件

名称返回参数说明
select(e : UTSJSONObject)索引选中时触发返回当前选中的信息