<template>
	<view class="list-page">

		<view class="search-box">
			<view class="search-content acea-row row-middle">
				<view class="search-icon">
					<image src="../../../static/images/search.png"> </image>
				</view>
				<input type="text" placeholder="请输入相关关键词" />
				<view class="search-btn">搜一下</view>
			</view>
			<view class="resource-tabs acea-row row-between-wrapper">
				<view :class="'tab ' + (active == 1 ? 'tab-a' : '')" data-i="1" @tap="tabClick">今日大事</view>
				<view :class="'tab ' + (active == 2 ? 'tab-a' : '')" data-i="2" @tap="tabClick">商业资讯</view>
				<view :class="'tab ' + (active == 3 ? 'tab-a' : '')" data-i="3" @tap="tabClick">政府政策</view>
				<view :class="'tab ' + (active == 4 ? 'tab-a' : '')" data-i="4" @tap="tabClick">生活资讯</view>
			</view>
		</view>
		<view class="content-box">
			<view class="list-box" v-if="active == 1">
				<view class="list-item acea-row row-between row-middle" v-for="(item,index) in articleList" :key="index"
					@click="toDetail(item.id)">
					<view class="item-l">
						<view class="title-box acea-row">
							<image src="../../../static/images/hot.png" v-if="item.isHot"></image>
							<view class="title line2">{{item.title}}</view>
						</view>
						<view class="acea-row row-middle row-between">
							<view class="auth">{{item.author}}</view>
							<view class="auth time">{{item.createTime.split(' ')[0]}}</view>
							<view class="see acea-row row-middle">
								<text>200</text>
								<image src="../../../static/images/eye.png"></image>
							</view>
						</view>
					</view>
					<view class="item-r">
						<image :src="item.imageInput" mode="aspectFill"></image>
					</view>
				</view>
			</view>
			<view class="list-box" v-if="active == 2">
				<view>2</view>
			</view>
			<view class="list-box" v-if="active == 3">
				<view>3</view>
			</view>
			<view class="list-box" v-if="active == 4">
				<view>4</view>
			</view>
		</view>
		<LoadStatus :loadStatus="loadStatus"></LoadStatus>
	</view>
</template>

<script>
	import { getArticle } from "@/api/home";
	import LoadStatus from '@/components/LoadStatus.vue'
	export default{
		components: {
			LoadStatus
		},
		data(){
			return{
				articleList: [],
				page: 0,
				size: 10,
				isLoading: true,
				loadStatus: '没有更多了...'
			}
		},
		onLoad(option) {
			this.active=option.active;
		},
		mounted() {
			this.getArticleList()
		},
		onReachBottom() {
			this.page = this.page + 1
			this.getArticleList()
		},
		methods: {
			getArticleList() {
				if (!this.isLoading) return
				uni.showLoading({
					title: '加载中...'
				})
				this.loadStatus = '加载中...'
				getArticle({
					page: this.page,
					size: this.size,
					isHot: 0
				}).then((res) => {
					if (res.data.content.length < this.size) {
						this.loadStatus = '没有更多了...'
						this.isLoading = false
					} else {
						this.isLoading = true
						this.loadStatus = '上拉加载更多...'
					}
					this.articleList = this.articleList.concat(res.data.content)
					uni.hideLoading()
				})
			},
			toDetail(id) {
				this.$yrouter.push({
					path: '/pages/life/articleDetail/index',
					query: {
						id: id
					}
				})
			},
			tabClick(e) {
				this.setData({
					active: e.currentTarget.dataset.i,
				})
			},
		}
	}
</script>

<style lang="less">
	.list-page {
		width: 100%;
		min-height: 100vh;
		background: #EEEEEE;

		.search-box {
			width: 100%;
			padding: 32rpx 40rpx 0 40rpx;
			background: #fff;

			.search-icon {
				width: 35rpx;
				height: 35rpx;
				margin-right: 12rpx;

				image {
					width: 100%;
					height: 100%;
				}
			}

			.search-content {
				width: 100%;
				padding: 0 0 0 50rpx;
				border: 2rpx solid #FF5100;
				border-radius: 8rpx;
				font-size: 28rpx;
				border-right: 0;

				input {
					color: #BFBFBF;
				}

				.search-btn {
					width: 132rpx;
					height: 70rpx;
					background: linear-gradient(39deg, #FF5100 0%, #FFA074 100%);
					line-height: 68rpx;
					text-align: center;
					color: #fff;
					border-radius: 8rpx;
					margin-left: auto;
				}
			}
		}

		.resource-tabs {
			width: 100%;
			background: #fff;

			.tab {
				width: 150rpx;
				padding: 22rpx 0;
				font-size: 32rpx;
				color: #707070;
				position: relative;
				font-weight: 500;
				text-align: center;
			}

			.tab::after {
				display: block;
				content: '';
				width: 84rpx;
				height: 12rpx;
				border-radius: 8rpx;
				background: #FF5100;
				position: absolute;
				bottom: -6rpx;
				left: 50%;
				margin-left: -40rpx;
				opacity: 0;
				transform: scaleX(0);
				transition: all .2s ease, opacity .15s ease;
			}

			.tab-a {
				color: #1D1D1D;
				font-weight: 600;
			}

			.tab-a::after {
				opacity: 1;
				transform: scaleX(1);
			}
		}

		.list-box {
			width: 100%;
			padding: 26rpx 40rpx 0;

			.list-item {
				width: 100%;
				background: #fff;
				border-radius: 12rpx;
				padding: 26rpx 32rpx 21rpx 32rpx;
				font-size: 24rpx;
				color: #707070;
				margin-bottom: 24rpx;

				.item-l {
					width: calc(100% - 260rpx);
					display: flex;
					flex-direction: column;
					justify-content: space-between;
					height: 130prx;

					.title-box {
						font-size: 32rpx;
						color: #4A4A4A;

						image {
							width: 19rpx;
							height: 22rpx;
							margin-right: 20rpx;
						}

						.title {
							margin-top: -10rpx;
							margin-bottom: 25rpx;
						}
					}

					.see {
						// margin-left: 20rpx;

						image {
							width: 24rpx;
							height: 24rpx;
							margin-left: 6rpx;
						}
					}
				}

				.item-r {
					width: 240rpx;

					image {
						width: 100%;
						height: 130rpx;
						border-radius: 16rpx;
					}
				}
			}
		}
	}
</style>
