Tdesign-vue-next Chat 源码阅读(1) 本地启动

介绍

TDesign是腾讯开源的适配移动端的组件库,适合在 vue 3 技术栈项目中使用。本篇主要探讨聊天组件 TD Chat for AI。

pnpm install

bash 复制代码
git clone https://github.com/Tencent/tdesign-vue-next.git --depth=1

pnpm:devPreinstall脚本

通过指令更新了git submodule,此项目关联了tdesign-common(TDesign 公共库)

js 复制代码
child_process.execSync('git submodule update --init', { stdio: 'inherit' });
bash 复制代码
cat ./.gitmodules # 查看submodule

# [submodule "tdesign-common"]
#        path = packages/common
#        url = https://github.com/Tencent/tdesign-common.git

monorepo关联了submodule的包

js 复制代码
// pnpm-workspace.yaml 
packages:
  - 'packages/**'
  - 'internal/**'
  - 'site'

postinstall脚本

调用internal/utils/package.json中的scripts,执行rollup构建internal/utils中的ts代码为js代码

json 复制代码
  "scripts": {
    "prebuild": "rollup -c rollup.config.ts"
  },

dev:chat

运行pnpm dev:chat时启动了dev服务,测试服务代码在packages/tdesign-vue-next-chat目录下,启动时执行packages/tdesign-vue-next-chat/site下的devscripts

site承载了文档功能,文档中引入了开发时tdesign-vue-next-chat组件用于开发环境调试

dev site服务使用了marked、highlight.js、marked-highlight等组件

packages/tdesign-vue-next-chat/site/src/routes.js定义了site文档的路由文件,由此可找到packages/pro-components/chat/chat.tsx为示例代码、packages/pro-components/chat/chat.md为API文档

build:chat

cross-env NODE_ENV=production tsx ./vue-next-chat/index.ts执行internal/builds/vue-next-chat/index.ts构建到dist目录后,将构建物复制到了packages/tdesign-vue-next-chat/es

tdesign-publish-cli

顾名思义,发布npm包的工具,并没发现代码

tip

tdesign-vue-next Button 测试用例对比element-plus Button 测试用例

pnpm -C 是 pnpm (Performant NPM) 的一个命令行参数,用于在指定目录下执行命令,而不必先切换到该目录。 这个参数非常有用,可以让你在不离开当前工作目录的情况下,操作其他目录中的 Node.js 项目。

相关推荐
用户别睡觉3 分钟前
五大 RAG 开源项目对比 2026:Dify、RAGFlow、FastGPT、AnythingLLM、LightRAG
github
用户7273744138846 分钟前
在 Windows 11 上从零装好 Carapace BIN:一次真实操作记录
github
miofly1 小时前
Claude Sonnet 5自主选药选坐标完成小鼠脑部手术,更强模型拒绝执行
开源·github
塞讯科技2 小时前
13,500 个分支被植入窃密工作流:Gheist 如何用 GitHub 令牌搬走仓库密钥
网络安全·ai·github·软件供应链安全·供应链投毒
阿智的AI开发笔记7 小时前
充了 200 块只跑出 3 条:AI 视频真正贵的地方,是「按次」和「按秒」的区别
github
GitHub实测笔记7 小时前
rtk 本机实测:给 AI Agent 砍掉 90% 的命令行噪音(Linux)
github
小莫4617 小时前
CI 全绿了,测试却可能是假的:GitHub Actions 三个静默失效的坑
github
dreams_dream9 小时前
项目想要推送多个平台仓库的方法
gitee·github
AI_Lab019 小时前
服务器管理工具要在服务器上装 Agent,安全吗?
服务器·安全·github
七牛云行业应用9 小时前
DeepSeek Harness 插件架构 vs MCP:Cordis 的「Everything is a Plugin」到底解决什么
ai·github·ai编程