适配logseq主题
实现
在无框架下的实现方式
无框架下的实现方式 logseq.App.onMacroRendererSlotted(({ slot, payload} ) => {
const [type,name,color] = payload.arguments
// 这里是新增的代码
const theme = top?.document
.querySelector("html")
?.getAttribute("data-theme") as typeof mode) ??
(matchMedia("prefers-color-scheme: dark").matches ? "dark" : "light");
//
if (type !== ':hello') return
logseq.provideUI({
key: 'hello',
reset: true,
slot, template: `
<div style="background-color: ${ theme === "dark"?"red":"green" }" class="hello"
data-block-uuid="${payload.uuid}"
data-on-click="msg" >
hello! ${name}
</div>
`,
})
})

在logseq-plugin-template-react下的实现方式
logseq-plugin-template-react下的实现方式

最后更新于