【vitePress】基于github快速添加评论功能(giscus)

server/2025/1/24 3:01:51/

一.添加评论插件

使用giscus来做vitepress 的评论模块,使用也非常的简单,具体可以参考:giscus 文档,首先安装giscus

npm i @giscus/vue

二.giscus操作

打开giscus 文档,如下图所示,填入你的 github 用户名 + 仓库名,勾选你需要的配置

如果显示不成功看是否满足上面三个条件:

1.公开仓库

2.在github安装giscuss app插件

3.打开discussion功能

找到setting

往下翻打开discussion

这样之后就会满足条件,giscus找到下面位置内容,后面要用

三.vitePress配置

.vitepress/theme/目录下创建myLayout.vue组件,添加 giscus 评论组件,

<!--Layout.vue-->
<template><Layout><template #doc-footer-before> </template><template #doc-after><div style="margin-top: 24px"><Giscus:key="page.filePath"repo="*"repo-id="*"category="*"category-id="*"mapping="pathname"strict="0"reactions-enabled="1"emit-metadata="0"input-position="bottom"lang="zh-CN"crossorigin="anonymous":theme="isDark ? 'dark' : 'light'"/></div></template></Layout>
</template><script lang="ts" setup>
import Giscus from "@giscus/vue";
import DefaultTheme from "vitepress/theme";
import { watch } from "vue";
import { inBrowser, useData } from "vitepress";const { isDark, page } = useData();const { Layout } = DefaultTheme;watch(isDark, (dark) => {if (!inBrowser) return;const iframe = document.querySelector("giscus-widget")?.shadowRoot?.querySelector("iframe");iframe?.contentWindow?.postMessage({ giscus: { setConfig: { theme: dark ? "dark" : "light" } } },"https://giscus.app");
});
</script>

.vitepress/index.js配置文件中使用自定义布局。

import DefaultTheme from 'vitepress/theme'
import Layout from './myLayout.vue' 
// import Layout from './Layout.vue'export default {Layout,extends: DefaultTheme,enhanceApp({ app }) {//app.component('confetti', confetti)},}

四、效果


http://www.ppmy.cn/server/160916.html

相关文章

c++ vector

1. vector 构造函数 功能描述&#xff1a; vector 构造函数 函数原型 vector v; // 默认构造函数 vector(n, elem); // 将n个elem拷贝给本身 vector(const vector& v); // 拷贝构造函数 vector(v.begin(), v.end()); // 将v[begin(), end())区间中的元素拷贝给本身 #incl…

《鸿蒙 HarmonyOS 应用开发从入门到精通(第 2 版)》学习笔记 ——HarmonyOS 环境搭建之安装DevEco Studio

作为一款开发工具&#xff0c;除了具有基本的代码开发、编译构建及调测等功能外&#xff0c;DevEco Studio还具有如下特点&#xff1a; 高效智能代码编辑&#xff1a;支持Java、XML、ArkTS、JS、C/C等语言的代码高亮、代码智能补齐、代码错误检查、代码自动跳转、代码格式化、…

js高阶-响应式原理

在JavaScript中&#xff0c;响应式原理通常是指一种编程模式&#xff0c;它允许开发者创建能够自动响应数据变化的系统或应用。这种模式在现代前端框架&#xff08;如Vue.js、React等&#xff09;中非常常见&#xff0c;尤其是在数据绑定和UI更新方面。以下是响应式原理的核心概…

leetcode刷题记录(七十二)——146. LRU 缓存

&#xff08;一&#xff09;问题描述 146. LRU 缓存 - 力扣&#xff08;LeetCode&#xff09;146. LRU 缓存 - 请你设计并实现一个满足 LRU (最近最少使用) 缓存 [https://baike.baidu.com/item/LRU] 约束的数据结构。实现 LRUCache 类&#xff1a; * LRUCache(int capacity)…

style标签没有写lang=“scss“引发的 bug 和反思

遇到了一个问题&#xff0c;有一个css样式问题&#xff0c;在 chrome 浏览器上和 16.0 版本以上的 safari 浏览器完全没有问题&#xff0c;但是在 15.3 版本的safari浏览器上就完全乱套了。 一查发现是我的某个 vue 文件中的style标签忘记写 lang"scss" 了&#xf…

以太坊深入解析:概念与原理全面剖析

引言 以太坊&#xff08;Ethereum&#xff09;作为区块链技术的代表性项目之一&#xff0c;自2015年发布以来&#xff0c;迅速成为全球区块链行业的核心基础设施。相比比特币&#xff0c;以太坊不仅支持点对点的价值转移&#xff0c;还引入了智能合约&#xff0c;使其能够承载…

FPGA 开发工作需求明确:关键要点与实践方法

FPGA开发工作需求明确&#xff1a;关键要点与实践方法 一、需求明确的重要性 在FPGA开发领域&#xff0c;明确的需求是项目成功的基石。FPGA开发往往涉及复杂的硬件逻辑设计、高速信号处理以及与其他系统的协同工作。若需求不明确&#xff0c;可能导致开发过程中频繁变更设计…

利用R计算一般配合力(GCA)和特殊配合力(SCA)

前记 一般配合力(General Combining Ability, GCA)和特殊配合力(Specific Combining Ability, SCA)是杂交育种中用于评估亲本组合潜力的重要概念,具体定义和区别如下: 一般配合力(GCA) 定义:GCA是指一个自交系与其他多个自交系杂交时,其杂交后代在某一性状(如产量)…