<template>
	<view class="content">
		<!-- 搜索 -->
		<search @handleSearch="handleSearch"></search>
		<!-- 食谱 -->
		<view class="footlist footbox" v-if="menuList.length">
			<view class="list" v-for="(it,id) in menuList" :key="it" @click="handleDetail(it.id)">
				<view class="topimg">
					<image :src="it.cover_url" class="img" mode="aspectFill"></image>
				</view>
				<view class="item">
					<view class="title">{{it.title}}</view>
					<view class="name">
						<image :src="it.create_user_head_pic"></image>
						<text class="overflow">{{it.create_user_nickname}}</text>
					</view>
					<view class="zan" @click="handleZan(it)">
						<image class="mr-5 xin" :src="it.is_me_like_it=='yes'?'/static/xin2.png':'/static/xin.png'">
						</image>
						<text>{{it.likes_num}}</text>
					</view>
				</view>
			</view>
		</view>
		<view class="endtext" v-if="(!lastPage || page >= lastPage)&&menuList.length">—— {{$t('msgBottom')}} ——</view>
		<view v-if="!menuList.length" class="nolist">
			<image src="../../static/none.png"></image>
			<text>{{$t('msgNoMoreData')}}</text>
		</view>
	</view>
</template>

<script>
	import {
		mapState
	} from "vuex";
	import search from "@/components/foodIndex/search.vue"
	export default {
		data() {
			return {
				type: "",
				name: "",
				page: 1,
				menuList: [],
				lastPage: '',
			}
		},
		components: {
			search
		},
		computed: {
			...mapState(["user"]),
			info() {
				return this.user
			}
		},
		onLoad() {
			let that = this
			uni.setNavigationBarTitle({
				title: that.$t('infoMyCollection')
			});

		},
		onShow() {
			let that = this
			that.name = ""
			that.page = 1
			that.menuList = []
			that.handleCooklist()
		},
		onReachBottom() {
			let that = this
			if (!this.lastPage || this.page >= this.lastPage) {
				uni.showToast({
					title: that.$t('noMoreData'),
					icon: 'none'
				})
				return
			}
			this.page++
			this.handleCooklist(this.page)
		},
		methods: {
			handleCooklist() {
				let that = this
				that.$model.getUserCollectList({
					page: that.page,
					aud_id: that.user.aud_id,
					search_data: that.name
				}).then(res => {
					if (res.code != 0) return
					that.menuList = res.data.content_list
					that.lastPage = res.data.page_total
				})
			},
			// 商品详情
			handleDetail(id) {
				uni.navigateTo({
					url: "/Food/me/menudetail?id=" + id
				})
			},
			// 搜索
			handleSearch(ite) {
				let that = this
				that.page = 1
				that.name = ite
				that.menuList = []
				that.lastPage = ""
				that.handleCooklist()
			}
		}
	}
</script>

<style lang="scss" scoped>
	.content {
		background: #fff;
	}

	.xin {
		width: 22px;
		height: 22px;
	}

	/deep/.serachBox {
		padding-top: 20rpx !important;
	}

	.footlist {
		position: relative;
		margin-top: 68px;
		padding: 30rpx;
		width: calc(100% - 60rpx);
		background: #fff;
		border-radius: 30rpx 30rpx 0 0;

		.item {
			background: #f7f7f7 !important;
			border-top: 1px solid #f7f7f7;
		}
	}

	.nolist {
		margin-top: 50%;
	}
</style>