{{ article.summary }}
+From 14935dfbf498b34ce66502c909be892e1ac7e61f Mon Sep 17 00:00:00 2001
From: wx <2636507191@qq.com>
Date: Fri, 8 May 2026 14:01:23 +0800
Subject: [PATCH] =?UTF-8?q?fix(news):=20=E6=96=B0=E9=97=BB=E5=8A=A8?=
=?UTF-8?q?=E6=80=81=E8=AF=A6=E6=83=85=E9=A1=B5=20+=20=E5=88=97=E8=A1=A8?=
=?UTF-8?q?=E5=8D=A1=E7=89=87=E5=8F=AF=E7=82=B9=E5=87=BB=E8=B7=B3=E8=BD=AC?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
- 移除 pages/news.vue,改为 pages/news/index.vue (列表) + [slug].vue (详情)
- 列表卡片包 NuxtLink 跳 /news/{slug},正文编辑器内容现在能渲染
- 详情页含面包屑/侧栏/上下篇导航/JSON-LD NewsArticle schema
---
pages/news/[slug].vue | 512 +++++++++++++++++++++++++++++
pages/{news.vue => news/index.vue} | 35 +-
2 files changed, 542 insertions(+), 5 deletions(-)
create mode 100644 pages/news/[slug].vue
rename pages/{news.vue => news/index.vue} (89%)
diff --git a/pages/news/[slug].vue b/pages/news/[slug].vue
new file mode 100644
index 0000000..9d91ce4
--- /dev/null
+++ b/pages/news/[slug].vue
@@ -0,0 +1,512 @@
+
+ {{ article.summary }}
+
动态不存在
+
{{ article.summary }}
+ 查看全文 → - + @@ -103,7 +105,7 @@ useBreadcrumbSchema([ dateModified: (article.date || article.createdAt) + 'T00:00:00+08:00', articleSection: article.category, inLanguage: 'zh-CN', - url: 'https://1814.love/news', + url: `https://1814.love/news/${article.id}`, author: { '@type': 'Organization', name: '呼籁旅行', url: 'https://1814.love' }, publisher: { '@id': 'https://1814.love/#organization' }, about: { '@type': 'TravelAgency', name: '呼籁旅行', url: 'https://1814.love' }, @@ -168,14 +170,28 @@ function formatDate(dateStr) { } .news-card { + display: block; background: @color-bg-white; border: 1px solid @color-border; border-radius: @border-radius-md; padding: @space-xl; - transition: box-shadow @transition-base; + text-decoration: none; + color: inherit; + transition: box-shadow @transition-base, border-color @transition-base, transform @transition-base; + cursor: pointer; &:hover { box-shadow: @shadow-md; + border-color: @color-primary-lighter; + transform: translateY(-2px); + + .news-title { + color: @color-primary; + } + + .news-readmore { + color: @color-primary-dark; + } } } @@ -253,13 +269,22 @@ function formatDate(dateStr) { color: @color-text-primary; margin: 0 0 @space-sm; line-height: @line-height-tight; + transition: color @transition-base; } .news-summary { font-size: @font-size-base; color: @color-text-secondary; line-height: @line-height-base; - margin: 0; + margin: 0 0 @space-sm; +} + +.news-readmore { + display: inline-block; + font-size: @font-size-sm; + color: @color-primary; + font-weight: @font-weight-medium; + transition: color @transition-base; } .news-cta {