mirror of
https://github.com/d0zingcat/NotionNext.git
synced 2026-05-28 07:26:57 +00:00
鼠标跟随动画
This commit is contained in:
@@ -23,6 +23,9 @@ const ThemeSwitch = dynamic(() => import('@/components/ThemeSwitch'), {
|
||||
const Fireworks = dynamic(() => import('@/components/Fireworks'), {
|
||||
ssr: false
|
||||
})
|
||||
const MouseFollow = dynamic(() => import('@/components/MouseFollow'), {
|
||||
ssr: false
|
||||
})
|
||||
const Nest = dynamic(() => import('@/components/Nest'), { ssr: false })
|
||||
const FlutteringRibbon = dynamic(
|
||||
() => import('@/components/FlutteringRibbon'),
|
||||
@@ -119,6 +122,7 @@ const ExternalPlugin = props => {
|
||||
const CLARITY_ID = siteConfig('CLARITY_ID')
|
||||
const IMG_SHADOW = siteConfig('IMG_SHADOW')
|
||||
const ANIMATE_CSS_URL = siteConfig('ANIMATE_CSS_URL')
|
||||
const MOUSE_FOLLOW = siteConfig('MOUSE_FOLLOW')
|
||||
|
||||
// 自定义样式css和js引入
|
||||
if (isBrowser) {
|
||||
@@ -172,7 +176,7 @@ const ExternalPlugin = props => {
|
||||
<>
|
||||
{/* 全局样式嵌入 */}
|
||||
<GlobalStyle />
|
||||
|
||||
{MOUSE_FOLLOW && <MouseFollow />}
|
||||
{THEME_SWITCH && <ThemeSwitch />}
|
||||
{DEBUG && <DebugPanel />}
|
||||
{ANALYTICS_ACKEE_TRACKER && <Ackee />}
|
||||
|
||||
27
components/MouseFollow.js
Normal file
27
components/MouseFollow.js
Normal file
@@ -0,0 +1,27 @@
|
||||
import { useEffect } from 'react'
|
||||
// import anime from 'animejs'
|
||||
import { siteConfig } from '@/lib/config'
|
||||
import { loadExternalResource } from '@/lib/utils'
|
||||
|
||||
/**
|
||||
* 鼠标跟随特效
|
||||
* @returns
|
||||
*/
|
||||
const MOUSE_FOLLOW = () => {
|
||||
const type = siteConfig('MOUSE_FOLLOW_EFFECT_TYPE')
|
||||
const color = siteConfig('MOUSE_FOLLOW_EFFECT_COLOR')
|
||||
|
||||
useEffect(() => {
|
||||
loadExternalResource('/js/mouse-follow.js', 'js').then(url => {
|
||||
if (window.createMouseCanvas) {
|
||||
window.createMouseCanvas()({
|
||||
type,
|
||||
color
|
||||
})
|
||||
}
|
||||
})
|
||||
}, [])
|
||||
|
||||
return <></>
|
||||
}
|
||||
export default MOUSE_FOLLOW
|
||||
Reference in New Issue
Block a user