diff --git a/pages/index.js b/pages/index.js
index 542500fb..7fac472b 100644
--- a/pages/index.js
+++ b/pages/index.js
@@ -5,12 +5,22 @@ import * as ThemeMap from '@/themes'
import { useGlobal } from '@/lib/global'
import { generateRss } from '@/lib/rss'
import { generateRobotsTxt } from '@/lib/robots.txt'
+
+/**
+ * 首页布局
+ * @param {*} props
+ * @returns
+ */
const Index = props => {
const { theme } = useGlobal()
const ThemeComponents = ThemeMap[theme]
return
}
+/**
+ * SSG 获取数据
+ * @returns
+ */
export async function getStaticProps() {
const from = 'index'
const props = await getGlobalNotionData({ from })
diff --git a/themes/next/LayoutBase.js b/themes/next/LayoutBase.js
index 37e7c21f..0f0f535d 100644
--- a/themes/next/LayoutBase.js
+++ b/themes/next/LayoutBase.js
@@ -8,8 +8,7 @@ import SideAreaLeft from './components/SideAreaLeft'
import SideAreaRight from './components/SideAreaRight'
import TopNav from './components/TopNav'
import { useGlobal } from '@/lib/global'
-import PropTypes from 'prop-types'
-import React from 'react'
+import { useEffect, useRef, useState } from 'react'
import CONFIG_NEXT from './config_next'
import Live2D from '@/components/Live2D'
import BLOG from '@/blog.config'
@@ -22,12 +21,13 @@ import BLOG from '@/blog.config'
const LayoutBase = (props) => {
const { children, headerSlot, meta, sideBarSlot, floatSlot, rightAreaSlot, siteInfo } = props
const { onLoading } = useGlobal()
- const targetRef = React.useRef(null)
- const floatButtonGroup = React.useRef(null)
+ const targetRef = useRef(null)
+ const floatButtonGroup = useRef(null)
const leftAreaSlot =
- const [show, switchShow] = React.useState(false)
- const [percent, changePercent] = React.useState(0) // 页面阅读百分比
+ const [showRightFloat, switchShow] = useState(false)
+ const [percent, changePercent] = useState(0) // 页面阅读百分比
+
const scrollListener = () => {
const targetRef = document.getElementById('wrapper')
const clientHeight = targetRef?.clientHeight
@@ -37,13 +37,13 @@ const LayoutBase = (props) => {
if (per > 100) per = 100
const shouldShow = scrollY > 100 && per > 0
- if (shouldShow !== show) {
+ if (shouldShow !== showRightFloat) {
switchShow(shouldShow)
}
changePercent(per)
}
- React.useEffect(() => {
+ useEffect(() => {
// facebook messenger 插件需要调整右下角悬浮按钮的高度
const fb = document.getElementsByClassName('fb-customerchat')
if (fb.length === 0) {
@@ -54,7 +54,7 @@ const LayoutBase = (props) => {
document.addEventListener('scroll', scrollListener)
return () => document.removeEventListener('scroll', scrollListener)
- }, [show])
+ }, [showRightFloat])
return (
@@ -78,7 +78,7 @@ const LayoutBase = (props) => {
{/* 右下角悬浮 */}
-
+
@@ -91,8 +91,4 @@ const LayoutBase = (props) => {
)
}
-LayoutBase.propTypes = {
- children: PropTypes.node
-}
-
export default LayoutBase