mirror of
https://github.com/d0zingcat/NotionNext.git
synced 2026-05-13 23:16:47 +00:00
重复请求处理
This commit is contained in:
@@ -4,26 +4,23 @@ import { useGlobal } from '@/lib/global'
|
||||
// import { useRouter } from 'next/router'
|
||||
import React from 'react'
|
||||
|
||||
let path = ''
|
||||
|
||||
export default function Busuanzi () {
|
||||
const { theme } = useGlobal()
|
||||
const router = useRouter()
|
||||
|
||||
// 切换文章时更新
|
||||
React.useEffect(() => {
|
||||
const busuanziRouteChange = url => {
|
||||
const Router = useRouter()
|
||||
Router.events.on('routeChangeComplete', (url, option) => {
|
||||
if (url !== path) {
|
||||
path = url
|
||||
busuanzi.fetch()
|
||||
}
|
||||
router.events.on('routeChangeComplete', busuanziRouteChange)
|
||||
return () => {
|
||||
router.events.off('routeChangeComplete', busuanziRouteChange)
|
||||
}
|
||||
}, [router.events])
|
||||
})
|
||||
|
||||
// 更换主题时更新
|
||||
React.useEffect(() => {
|
||||
if (theme) {
|
||||
busuanzi.fetch()
|
||||
}
|
||||
})
|
||||
}, [theme])
|
||||
return null
|
||||
}
|
||||
|
||||
@@ -9,26 +9,15 @@ import 'prismjs/plugins/line-numbers/prism-line-numbers.css'
|
||||
|
||||
// mermaid图
|
||||
import mermaid from 'mermaid'
|
||||
import { useGlobal } from '@/lib/global'
|
||||
import { useRouter } from 'next/router'
|
||||
|
||||
/**
|
||||
* @author https://github.com/txs/
|
||||
* @returns
|
||||
*/
|
||||
const PrismMac = () => {
|
||||
const router = useRouter()
|
||||
const { isDarkMode } = useGlobal()
|
||||
const scrollTop = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop
|
||||
|
||||
React.useEffect(() => {
|
||||
renderPrismMac()
|
||||
window.scrollTo(0, scrollTop)
|
||||
router.events.on('routeChangeComplete', renderPrismMac)
|
||||
return () => {
|
||||
router.events.off('routeChangeComplete', renderPrismMac)
|
||||
}
|
||||
}, [isDarkMode])
|
||||
})
|
||||
return <></>
|
||||
}
|
||||
|
||||
|
||||
@@ -3,6 +3,8 @@ import { init } from '@waline/client'
|
||||
import BLOG from '@/blog.config'
|
||||
import { useRouter } from 'next/router'
|
||||
|
||||
const path = ''
|
||||
|
||||
/**
|
||||
* @see https://waline.js.org/guide/get-started.html
|
||||
* @param {*} props
|
||||
@@ -14,7 +16,9 @@ const WalineComponent = (props) => {
|
||||
const router = useRouter()
|
||||
|
||||
const updateWaline = url => {
|
||||
walineInstanceRef.current?.update(props)
|
||||
if (url !== path) {
|
||||
walineInstanceRef.current?.update(props)
|
||||
}
|
||||
}
|
||||
|
||||
React.useEffect(() => {
|
||||
|
||||
@@ -55,7 +55,7 @@ bszCaller = {
|
||||
const fetch = () => {
|
||||
bszTag && bszTag.hides()
|
||||
bszCaller.fetch('//busuanzi.ibruce.info/busuanzi?jsonpCallback=BusuanziCallback', function (t) {
|
||||
// console.log('不蒜子请求结果',t)
|
||||
// console.log('不蒜子',t)
|
||||
bszTag.texts(t), bszTag.shows()
|
||||
})
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user