teek文档模板
全局问候语

目录
[[toc]]
[toc]
简介
来给自己的Teek博客增加一个
全局问候语功能。😊
版权
警告
本着开源共享、共同学习的精神:
本文是在 《[Hyde Blog](https://teek.seasir.top/)》博主的《[Umami统计](https://teek.seasir.top/pages/84d648)》文章 基础上增加了一些自己的实际操作记录和修改,内容依旧属于原作者所有(感谢原作者分享的手把手文档💖💖💖)。转载无需和我联系,但请注明文章来源。如果侵权之处,请联系博主进行删除,谢谢。
环境
2025.5.9(已解决)
警告
次配置适用于`Teek@1.2.0-2025.5.12`版本(其它版本可自行测试)。
提示
自己开源的 《[vitepress-theme-teek-one-public](https://gitee.com/onlyonexl/vitepress-theme-teek-one-public)》网站模板。
此模板是在《[Young Kbt blog](https://vp.teek.top/)》大佬开源项目《[vitepress-theme-teek ](https://github.com/Kele-Bingtang/vitepress-theme-teek)》基础上修改为自己的风格而成,感谢大佬开发得主题,大佬威武。❤️❤️
安装
(1)新建组件
创建docs\.vitepress\theme\components\GlobalGreet.vue文件,添加如下代码:
1<script setup lang="ts" name="GlobalGreet">
2import { TkMessage } from "vitepress-theme-teek";
3import { ref, watch } from "vue";
4import { useRoute } from "vitepress";
5
6const route = useRoute();
7
8const hasGreet = ref(false);
9const duration = 4000;
10
11const greet = () => {
12 console.log(1);
13 if (hasGreet.value) return;
14
15 hasGreet.value = true;
16 setTimeout(() => {
17 hasGreet.value = false;
18 }, duration);
19
20 const now = new Date();
21 let hours = now.getHours();
22 let minutes = now.getMinutes();
23 let seconds = now.getSeconds();
24
25 const timeStr = `${String(hours).padStart(2, "0")}:${String(minutes).padStart(2, "0")}:${String(seconds).padStart(
26 2,
27 "0"
28 )}`;
29 const message = getGreetingMessage(hours, timeStr);
30
31 TkMessage.info({ message, duration, plain: true });
32};
33
34const getGreetingMessage = (hours: number, timeStr: string) => {
35 if (hours >= 6 && hours < 11) {
36 return `早上好呀~~,现在是 ${timeStr},吃早餐了吗?😊🤭`;
37 }
38
39 if (hours >= 12 && hours <= 16) {
40 return `下午好呀~~,现在是 ${timeStr},繁忙的下午也要适当休息哦🥤🏀~~`;
41 }
42
43 if (hours >= 16 && hours <= 19) {
44 return `到黄昏了~~,现在是 ${timeStr},该准备吃饭啦🥗🍖~~`;
45 }
46
47 if (hours >= 19 && hours < 24) {
48 return `晚上好呀~~,现在是 ${timeStr},该准备洗漱睡觉啦🥱😪~~`;
49 }
50
51 if (hours >= 0 && hours < 6) {
52 return `别再熬夜了~~,现在是 ${timeStr},早点睡吧,让我们一起欣赏早上的太阳~~😇🛏`;
53 }
54
55 return `你好呀!现在是 ${timeStr}。`;
56};
57
58watch(route, greet, { immediate: true });
59</script>
60
61<template></template>
(2)注册组件
编辑docs\.vitepress\theme\components\TeekLayoutProvider.vue文件,添加如下代码:(具体代码可从我开源库Teek-one里获取)
1import GlobalGreet from "./GlobalGreet.vue"; //导入全局问候组件
2
3
4 <!-- 全局问候 -->
5 <GlobalGreet />


(3)运行测试
效果
每切换到一个网页时,会弹出如下弹框哦,有趣的特性。

关于我
我的博客主旨:
- 排版美观,语言精炼;
- 文档即手册,步骤明细,拒绝埋坑,提供源码;
- 本人实战文档都是亲测成功的,各位小伙伴在实际操作过程中如有什么疑问,可随时联系本人帮您解决问题,让我们一起进步!
🍀 个人网站

🍀 微信二维码
x2675263825 (舍得), qq:2675263825。

🍀 微信公众号
《云原生架构师实战》

🍀 csdn
https://blog.csdn.net/weixin_39246554?spm=1010.2135.3001.5421

🍀 知乎
https://www.zhihu.com/people/foryouone

最后
如果你还有疑惑,可以去我的网站查看更多内容或者联系我帮忙查看。
如果你有更好的方式,评论区留言告诉我。谢谢!
好了,本次就到这里了,感谢大家阅读,最后祝大家生活快乐,每天都过的有意义哦,我们下期见!


