This commit is contained in:
2024-09-10 10:49:08 +08:00
parent b5fd06b800
commit dd4f5938da
6391 changed files with 722800 additions and 0 deletions

View File

@@ -0,0 +1,91 @@
<!--
信息列表的预览页面 比如 通知消息的前几条等
通用信息
@author terrfly
@site https://www.jeequan.com
@date 2022/11/15 06:18
-->
<template>
<view class="notice-wrapper">
<view class="notice-title" v-if="props.tableTitle">
<view class="notice-news">{{ props.tableTitle }}</view>
<view class="notice-more flex-center" v-if="props.isShowMoreBtn" @tap="listviewClickFunc(true, null)">
更多<image src="/static/iconImg/icon-arrow-black.svg" mode="scaleToFill" /></view>
</view>
<block v-for="(v, i) in props.dataList" :key="i">
<view class="notice-main" hover-class="touch-hover" hover-stay-time="150" @tap="listviewClickFunc(false, v)">
<view class="notice-content single-text-beyond">{{ v[props.fields.title] }}</view>
<view class="notice-time">{{ v[props.fields.subtitle] }}</view>
</view>
</block>
</view>
</template>
<script setup>
const props = defineProps({
//列表标题 传则展示 不传则移除
tableTitle: { type: String },
// 数据列表, 默认是按照: { title, subtitle }
dataList: { type: Array, default: () => [] },
// 约定的字段
fields: { type: Object, default: {title: 'title', subtitle: 'subtitle'} },
// 是否显示更多按钮
isShowMoreBtn: { type: Boolean, default: true },
})
// touchDown 列表点击回调 touchMore点击更多回调
const emits = defineEmits(["click"])
function listviewClickFunc (isClickMore, record) {
emits('click', isClickMore, record)
}
</script>
<style lang="scss" scoped>
.notice-wrapper {
width: 680rpx;
margin: 0 auto;
background-color: $J-bg-ff;
border-radius: $J-b-r32;
.notice-title {
display: flex;
justify-content: space-between;
align-items: center;
padding: 0 30rpx;
height: 102rpx;
border-bottom: 1rpx solid #ededed;
.notice-news {
font-size: 32rpx;
font-weight: 500;
}
.notice-more {
font-size: 32rpx;
color: $J-color-t80;
image {
width: 42rpx;
height: 42rpx;
transform: rotate(90deg);
margin-left: 5rpx;
}
}
}
.notice-main {
padding: 30rpx;
height: 90rpx;
.notice-content {
margin-bottom: 16rpx;
font-size: 30rpx;
}
.notice-time {
font-size: 26rpx;
color: $J-color-ta6;
}
}
}
</style>