mirror of
https://github.com/d0zingcat/NotionNext.git
synced 2026-06-09 07:26:47 +00:00
fix : 修复 artalk 明暗切换时的显示 bug
This commit is contained in:
@@ -20,18 +20,32 @@ const Artalk = ({ siteInfo }) => {
|
|||||||
|
|
||||||
const initArtalk = async () => {
|
const initArtalk = async () => {
|
||||||
await loadExternalResource(artalkCss, 'css')
|
await loadExternalResource(artalkCss, 'css')
|
||||||
window?.Artalk?.init({
|
const artalk = window?.Artalk?.init({
|
||||||
server: artalkServer, // 后端地址
|
server: artalkServer,
|
||||||
el: '#artalk', // 容器元素
|
el: '#artalk',
|
||||||
locale: artalkLocale,
|
locale: artalkLocale,
|
||||||
// pageKey: '/post/1', // 固定链接 (留空自动获取)
|
site: site,
|
||||||
// pageTitle: '关于引入 Artalk 的这档子事', // 页面标题 (留空自动获取)
|
darkMode: document.documentElement.classList.contains('dark')
|
||||||
site: site // 你的站点名
|
|
||||||
})
|
})
|
||||||
|
|
||||||
|
const observer = new MutationObserver((mutations) => {
|
||||||
|
mutations.forEach((mutation) => {
|
||||||
|
if (mutation.attributeName === 'class') {
|
||||||
|
const isDark = document.documentElement.classList.contains('dark')
|
||||||
|
artalk?.setDarkMode(isDark)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
})
|
||||||
|
|
||||||
|
observer.observe(document.documentElement, {
|
||||||
|
attributes: true,
|
||||||
|
attributeFilter: ['class']
|
||||||
|
})
|
||||||
|
|
||||||
|
return () => observer.disconnect()
|
||||||
}
|
}
|
||||||
return (
|
|
||||||
<div id="artalk"></div>
|
return <div id="artalk"></div>
|
||||||
)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
export default Artalk
|
export default Artalk
|
||||||
|
|||||||
Reference in New Issue
Block a user