22301009 | afbcf4b | 2025-04-10 16:08:39 +0800 | [diff] [blame] | 1 | // export default Recommend; |
| 2 | import React, { useEffect, useState } from 'react'; |
22301009 | ecc1c1c | 2025-04-09 21:56:23 +0800 | [diff] [blame] | 3 | import './Recommend.css'; |
| 4 | |
22301009 | ecc1c1c | 2025-04-09 21:56:23 +0800 | [diff] [blame] | 5 | const Recommend = () => { |
22301009 | afbcf4b | 2025-04-10 16:08:39 +0800 | [diff] [blame] | 6 | const [paidLists, setPaidLists] = useState([]); |
| 7 | const [loading, setLoading] = useState(true); |
| 8 | |
| 9 | useEffect(() => { |
| 10 | const fetchPaidLists = async () => { |
| 11 | try { |
| 12 | const API_BASE = process.env.REACT_APP_API_BASE; |
| 13 | const response = await fetch(`${API_BASE}/echo/recommendations/paid?user_id=1`); |
| 14 | console.log('请求地址:', `${process.env.REACT_APP_API_BASE}/echo/recommendations/paid?user_id=1`); |
| 15 | |
| 16 | |
| 17 | // const response = await fetch('/echo/recommendations/paid?user_id=1'); |
| 18 | const data = await response.json(); |
| 19 | if (data.status === 'success') { |
| 20 | setPaidLists(data.paid_recommendations); |
| 21 | } else { |
| 22 | console.warn('获取付费片单失败'); |
| 23 | } |
| 24 | } catch (error) { |
| 25 | console.error('请求出错:', error); |
| 26 | } finally { |
| 27 | setLoading(false); |
| 28 | } |
| 29 | }; |
| 30 | |
| 31 | fetchPaidLists(); |
| 32 | }, []); |
| 33 | |
22301009 | ecc1c1c | 2025-04-09 21:56:23 +0800 | [diff] [blame] | 34 | return ( |
22301009 | afbcf4b | 2025-04-10 16:08:39 +0800 | [diff] [blame] | 35 | <div className="recommend-wrapper"> |
| 36 | <h2 className="recommend-section-title">付费片单</h2> |
| 37 | {loading ? ( |
| 38 | <p>加载中...</p> |
| 39 | ) : ( |
| 40 | <div className="recommend-paid-row"> |
| 41 | {paidLists.map((item) => ( |
| 42 | <div className="paid-card" key={item.group_id}> |
| 43 | <img src={item.image_url} alt={item.group_name} className="paid-cover" /> |
| 44 | <div className="paid-title">{item.group_name}</div> |
22301009 | ecc1c1c | 2025-04-09 21:56:23 +0800 | [diff] [blame] | 45 | </div> |
| 46 | ))} |
| 47 | </div> |
22301009 | afbcf4b | 2025-04-10 16:08:39 +0800 | [diff] [blame] | 48 | )} |
22301009 | ecc1c1c | 2025-04-09 21:56:23 +0800 | [diff] [blame] | 49 | </div> |
| 50 | ); |
| 51 | }; |
| 52 | |
| 53 | export default Recommend; |