钟神秀

所有的为时已晚都是恰逢其时

钟神秀 avatar

Author

钟神秀

大三学生 · 博客写作者

Telegram

我的频道

不定期推送灵感笔记

t.me/zsxcoder
联系方式
QQ
3149261770
发送邮件
测试 Chat.astro 组件

测试 Chat.astro 组件

这是一篇用来测试 Chat.astro 组件效果的文章

钟神秀
钟神秀 大学牛马
2026年01月22日
更新于 01月22日
预计阅读 6 分钟
1411 字

测试 Chat.astro 组件

这篇文章用来测试我新创建的 Chat.astro 组件,该组件实现了 QQ 聊天的样式效果,左边是对方,右边是我。

测试 QQ 聊天样式

2026-01-22 14:30
小明

你好啊,在吗?

14:30
2026-01-22 14:31

在呢,有什么事吗?

14:31
2026-01-22 14:32
小明

今天天气不错,想不想一起去打球?

14:32
2026-01-22 14:33

好啊,什么时候?

14:33
2026-01-22 14:34
小明

下午 3 点怎么样? 在学校操场见

14:34
2026-01-22 14:35

没问题,我准时到!

14:35

测试连续消息

2026-01-22 15:00
小红

你在忙吗? 我有个问题想请教你 关于 Astro 的

15:00
2026-01-22 15:01

不忙,你说

15:01
2026-01-22 15:02
小红

我想知道怎么在 Astro 中使用组件 特别是 MDX 组件 你能给我讲讲吗?

15:02
2026-01-22 15:03

当然可以! 首先,你需要在 src/components/mdx 目录下创建组件 然后在 MDX 文件中导入使用 或者在页面中注册,这样所有 MDX 文件都可以使用

15:03

测试长消息

2026-01-22 16:00
小李

今天我学习了很多关于 Astro 的知识,感觉 Astro 真的很强大!它可以让我们使用多种框架来构建网站,而且性能非常好。我特别喜欢它的静态生成功能,可以生成非常快的网站。你觉得 Astro 怎么样?

16:00
2026-01-22 16:01

我也觉得 Astro 很强大!它的混合渲染模式非常灵活,可以根据需要选择静态生成或服务端渲染。而且它的组件系统很强大,可以使用 React、Vue 等多种框架的组件。我已经用 Astro 构建了好几个网站,体验非常好!

16:01

测试 Markdown 支持

2026-01-22 17:00
小王

这是一条包含 Markdown 的消息

  • 列表项 1
  • 列表项 2
  • 列表项 3

这是一段引用

行内代码

// 这是一段代码块
console.log("Hello, World!");
17:00
2026-01-22 17:01

这是一条 回复,也支持 Markdown

标题

链接

图片

17:01

测试特殊消息类型

2026-01-22 18:00
小张

这条消息不会被撤回

18:00
2026-01-22 18:01
对方撤回了一条消息
18:01
2026-01-22 18:02
这条消息被删除了
18:02
2026-01-22 18:03
小张

我们继续聊天吧

18:03

测试带头像的消息

2026-01-22 19:00
头像用户
头像用户

你好,我是带有头像的用户!

19:00
2026-01-22 19:01

你好啊,我也带有头像!

19:01
我

测试效果说明

  • 基本聊天功能:支持左边对方消息和右边自己消息的显示,符合 QQ 聊天习惯
  • 消息气泡样式:带有圆角和小三角指示,区分发送方向
  • 连续消息:同一发送者的连续消息会正确显示,间距合理
  • 长消息:自动换行,不会溢出,保持良好的阅读体验
  • Markdown 支持:支持 Markdown 语法,包括标题、列表、引用、代码块等
  • 代码高亮:使用 highlight.js 实现代码高亮,支持多种语言
  • 特殊消息类型:支持撤回消息和删除消息的显示
  • 头像支持:支持自定义头像,也可以使用默认头像
  • 日期显示:支持显示消息日期和时间
  • 明暗模式适配:适配博客的明暗主题
  • 响应式设计:适配不同屏幕尺寸,在手机和电脑上都有良好的显示效果

结论

Chat.astro 组件已经成功实现了 QQ 聊天的样式效果,左边是对方,右边是我,带有消息气泡和小三角指示,符合 QQ 聊天的视觉习惯。组件支持多种聊天场景,包括私聊、连续消息、长消息、Markdown 消息等,能够满足各种聊天需求。

组件采用了基于 messages 数组的 API,使用更加灵活和强大,可以轻松实现复杂的聊天场景。同时,组件支持 Markdown 语法和代码高亮,为博客文章增添了更多的互动性和趣味性。

组件的样式与博客的整体风格保持一致,支持明暗主题适配,能够很好地融入博客的设计体系。它的响应式设计确保了在不同设备上都有良好的显示效果。

通过使用 Chat.astro 组件,你可以在博客文章中轻松创建各种聊天场景,增强文章的可读性和互动性,为读者带来更好的阅读体验。

觉得这篇文章怎么样?

点个赞,让更多人看到!

分享这篇文章

知识因分享而增值

分类

技术分享

标签

测试
组件

版权声明:本文作者为 钟神秀,首发于www.zsxcoder.top

遵循 CC BY-NC-SA 4.0 许可协议。转载请注明出处!