Files
Notebook-StarNet/aboutAETV.md
T

72 lines
1.7 KiB
Markdown

# 与星网项目相关
---
* TabList用法
```html
<TabList v-model:value="activeTabName" :tabs="tabs"></TabList>
```
导入
```ts
import TabList from '@/components/tabList.vue'
```
其中tabs的格式如下
```ts
const tabs = ref([
{
label: '教师作品',
value: 'teacherWorks'
}
])
```
作用为生成一个标签页
---
* ScrollLoad用法
```html
<ScrollLoad
ref="scrollLoadRef"
v-bind="scrollLoadProps"
@fetchEnd="handleScrollDataFetchEnd">
<!-- 这里直接使用elementplus的组件构建骨架屏 -->
<template #skeleton>
<el-skeleton
:count="11"
:throttle="500"
animated
class="result-skeleton">
<template #template>
<el-skeleton-item
variant="rect"
class="result-item-skeleton result-item"></el-skeleton-item>
</template>
</el-skeleton>
</template>
<!-- 这里为懒加载列表的内容,此处data未使用 -->
<template #default={data}>
<replayCard
v-for="data of testData.testData"
:key="data.title"
:cardData="data"></replayCard>
</template>
<!-- 无数据时显示 -->
<template #no-data>
<RemindEmptyResource class="result-no-data"></RemindEmptyResource>
</template>
</ScrollLoad>
```
其中scrollLoadProps的参数为如下
```ts
const scrollLoadProps = computed(() => {
return {
apiConf: api.something,
matchData: '@data.items@',
params: {}
}
})
```
具体为到底时使用传入的api请求一组数据,然后传回的data可以通过fetchEnd或是default插槽进行处理,有时候需要对传回的数据进行预处理才不会报错(因为后端的数据格式可能不会对上scroolList的格式)
---
# 接口使用相关