Skip to content

Commit 1ef885a

Browse files
修复了一些代码的小错误
1 parent 843e22e commit 1ef885a

20 files changed

Lines changed: 87 additions & 67 deletions

src/components/ConfigCarrier.astro

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import { siteConfig, expressiveCodeConfig } from "../config";
77
<div id="config-carrier" data-hue={siteConfig.themeColor.hue} data-hide-code-blocks-during-transition={expressiveCodeConfig.hideDuringThemeTransition ? "true" : "false"}>
88
</div>
99

10-
<script define:vars={{ tocEnable: siteConfig.toc.enable, tocDepth: siteConfig.toc.depth, tocUseJapaneseBadge: siteConfig.toc.useJapaneseBadge }}>
10+
<script is:inline define:vars={{ tocEnable: siteConfig.toc.enable, tocDepth: siteConfig.toc.depth, tocUseJapaneseBadge: siteConfig.toc.useJapaneseBadge }}>
1111
// 将TOC配置传递到前端
1212
window.siteConfig = window.siteConfig || {};
1313
window.siteConfig.toc = {

src/components/CustomScrollbar.astro

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,7 @@ const {
119119

120120
<script>
121121
// 获取组件元素
122-
const scrollbarEl = document.currentScript?.parentElement?.querySelector('.custom-scrollbar');
122+
const scrollbarEl = document.currentScript?.parentElement?.querySelector('.custom-scrollbar') as HTMLElement | null;
123123

124124
if (scrollbarEl) {
125125
// 创建滚动条轨道和拇指元素

src/components/PasswordProtection.astro

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -253,7 +253,7 @@ const { encryptedContent, passwordHash } = Astro.props;
253253
}
254254
</style>
255255

256-
<script define:vars={{
256+
<script is:inline define:vars={{
257257
encryptedContent,
258258
passwordHash,
259259
i18nUnlocking: i18n(I18nKey.passwordUnlocking),

src/components/PostCard.astro

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ const { remarkPluginFrontmatter } = await render(entry);
7777
<a
7878
href={getTagUrl(tag)}
7979
class:list={[
80-
siteConfig.tagStyle.useNewStyle
80+
siteConfig.tagStyle?.useNewStyle
8181
? "link-lg transition text-50 text-xs font-medium px-2 py-1 rounded-lg hover:text-[var(--primary)] dark:hover:text-[var(--primary)] active:text-[var(--primary)] dark:active:text-[var(--primary)] group/tag whitespace-nowrap"
8282
: "btn-regular h-6 text-xs px-2 rounded-lg"
8383
]}

src/components/PostMeta.astro

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,7 @@ const {
126126

127127
<!-- 只有在非首页且启用umami且有slug时才加载脚本 -->
128128
{!isHome && umamiEnabled && id && (
129-
<script define:vars={{ id, umamiBaseUrl, umamiApiKey, umamiWebsiteId, umamiConfig }}>
129+
<script is:inline define:vars={{ id, umamiBaseUrl, umamiApiKey, umamiWebsiteId, umamiConfig }}>
130130
// 客户端统计文案生成函数
131131
function generateStatsText(pageViews, visitors) {
132132
return `浏览量 ${pageViews} · 访客 ${visitors}`;

src/components/layout/RightSideBar.astro

Lines changed: 34 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,56 +1,59 @@
11
---
22
import type { MarkdownHeading } from "astro";
3-
import { widgetManager } from "@/utils/widget-manager";
43
import Announcement from "@/components/widget/Announcement.astro";
4+
import Calendar from "@/components/widget/Calendar.astro";
55
import Categories from "@/components/widget/Categories.astro";
6+
import MusicPlayer from "@/components/widget/MusicPlayer.svelte";
67
import Profile from "@/components/widget/Profile.astro";
8+
import SiteStats from "@/components/widget/SiteStats.astro";
79
import Tags from "@/components/widget/Tags.astro";
810
import TOC from "@/components/widget/TOC.astro";
9-
import MusicPlayer from "@/components/widget/MusicPlayer.svelte";
10-
import SiteStats from "@/components/widget/SiteStats.astro";
11-
import Calendar from "@/components/widget/Calendar.astro";
11+
import { widgetManager } from "@/utils/widget-manager";
1212
1313
interface Props {
14-
class?: string;
15-
headings?: MarkdownHeading[];
14+
class?: string;
15+
headings?: MarkdownHeading[];
1616
}
1717
1818
const { class: className, headings } = Astro.props;
1919
2020
// 获取右侧边栏的组件列表
2121
const topComponents = widgetManager.getComponentsByPosition("top", "right");
22-
const stickyComponents = widgetManager.getComponentsByPosition("sticky", "right");
22+
const stickyComponents = widgetManager.getComponentsByPosition(
23+
"sticky",
24+
"right",
25+
);
2326
2427
// 组件映射表
2528
const componentMap = {
26-
profile: Profile,
27-
announcement: Announcement,
28-
categories: Categories,
29-
tags: Tags,
30-
toc: TOC,
31-
"music-player": MusicPlayer,
32-
"site-stats": SiteStats,
33-
calendar: Calendar,
29+
profile: Profile,
30+
announcement: Announcement,
31+
categories: Categories,
32+
tags: Tags,
33+
toc: TOC,
34+
"music-player": MusicPlayer,
35+
"site-stats": SiteStats,
36+
calendar: Calendar,
3437
};
3538
3639
// 渲染组件的辅助函数
3740
function renderComponent(component: any, index: number, _components: any[]) {
38-
const ComponentToRender =
39-
componentMap[component.type as keyof typeof componentMap];
40-
if (!ComponentToRender) return null;
41+
const ComponentToRender =
42+
componentMap[component.type as keyof typeof componentMap];
43+
if (!ComponentToRender) return null;
4144
42-
const componentClass = widgetManager.getComponentClass(component, index);
43-
const componentStyle = widgetManager.getComponentStyle(component, index);
45+
const componentClass = widgetManager.getComponentClass(component, index);
46+
const componentStyle = widgetManager.getComponentStyle(component, index);
4447
45-
return {
46-
Component: ComponentToRender,
47-
props: {
48-
class: componentClass,
49-
style: componentStyle,
50-
headings: component.type === "toc" ? headings : undefined,
51-
...component.customProps,
52-
},
53-
};
48+
return {
49+
Component: ComponentToRender,
50+
props: {
51+
class: componentClass,
52+
style: componentStyle,
53+
headings: component.type === "toc" ? headings : undefined,
54+
...component.customProps,
55+
},
56+
};
5457
}
5558
---
5659

@@ -129,8 +132,8 @@ function renderComponent(component: any, index: number, _components: any[]) {
129132
window.addEventListener('resize', () => this.updateResponsiveDisplay());
130133

131134
// 监听SWUP内容替换事件
132-
if (typeof window !== 'undefined' && window.swup) {
133-
window.swup.hooks.on('content:replace', () => {
135+
if (typeof window !== 'undefined' && (window as any).swup) {
136+
(window as any).swup.hooks.on('content:replace', () => {
134137
// 延迟执行以确保DOM已更新
135138
setTimeout(() => {
136139
this.updateResponsiveDisplay();

src/components/misc/AnimationTest.astro

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@
5858
}
5959
</style>
6060

61-
<script>
61+
<script is:inline>
6262
// 动画测试函数
6363
function testSlideIn() {
6464
const content = document.getElementById('test-content');
@@ -89,6 +89,11 @@
8989

9090
content.className = 'test-content transition-slide-in is-active';
9191
}
92+
93+
// 暴露函数给全局作用域以便HTML中的onclick可以调用
94+
window.testSlideIn = testSlideIn;
95+
window.testSlideOut = testSlideOut;
96+
window.resetAnimation = resetAnimation;
9297

9398
// 页面加载时自动触发滑入动画
9499
document.addEventListener('DOMContentLoaded', () => {

src/components/misc/FullscreenWallpaper.astro

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -188,7 +188,7 @@ const positionClass = getPositionClass(position);
188188
</div>
189189

190190
{isCarouselEnabled && (
191-
<script define:vars={{ carouselInterval }}>
191+
<script is:inline define:vars={{ carouselInterval }}>
192192
// 全屏壁纸轮播逻辑
193193
function initFullscreenWallpaperCarousel() {
194194
const wallpaperContainer = document.querySelector('[data-fullscreen-wallpaper]');

src/components/misc/Icon.astro

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ const iconId = `icon-${Math.random().toString(36).substr(2, 9)}`;
6363
></iconify-icon>
6464
</span>
6565

66-
<script define:vars={{ iconId, icon }}>
66+
<script is:inline define:vars={{ iconId, icon }}>
6767
// 图标加载和显示逻辑
6868
(function() {
6969
const container = document.querySelector(`[data-icon-container="${iconId}"]`);

src/components/misc/IconifyLoader.astro

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ const { preloadIcons = [], timeout = 10000, retryCount = 3 } = Astro.props;
1212
---
1313

1414
<!-- Iconify图标库加载器 -->
15-
<script define:vars={{ preloadIcons, timeout, retryCount }}>
15+
<script is:inline define:vars={{ preloadIcons, timeout, retryCount }}>
1616
// 全局图标加载逻辑
1717
(function() {
1818
'use strict';

0 commit comments

Comments
 (0)