从零搭建TypeScript开发环境:Node.js、pnpm与tsx最佳实践
如果你是一名前端开发者或者正打算从 JavaScript 转向更健壮、更可维护的现代前端开发那么“环境搭建”这个看似简单的第一步很可能就是你遇到的第一个、也是最容易劝退的拦路虎。为什么我的代码在本地跑得好好的一打包就报错为什么别人的 TypeScript 项目能优雅地提示类型而我的编辑器却一片红问题的根源往往不在于你写了多复杂的逻辑而在于项目最底层的环境——Node.js 版本、包管理器、TypeScript 编译器、构建工具——没有正确配置或彼此不兼容。这篇文章要解决的正是这个最基础也最关键的痛点如何从零开始搭建一个稳定、高效、面向未来的 TypeScript 开发环境。这不仅仅是安装一个软件而是建立一套可复用的工程化基础。我们将从 Node.js 的版本管理切入解决“安装哪个版本”的困惑接着配置高效的包管理器告别缓慢的npm install然后安装和配置 TypeScript 编译器理解tsconfig.json中每个选项的意义最后通过一个完整的 CLI 工具开发示例串联所有环节让你亲手搭建一个能运行、能构建、能调试的 TypeScript 项目。读完本文你将获得的不只是一份安装清单而是一套清晰的工程化思维。你会知道为什么需要这些工具它们之间如何协作以及当环境出现问题时应该按照什么顺序去排查。无论你是初学者还是希望规范团队基建的资深开发者这篇文章都能提供直接的、可落地的解决方案。1. 为什么你的 TypeScript 环境总出问题从源头理解依赖链在深入安装步骤之前我们必须先理清 TypeScript 开发环境的依赖关系。很多开发者习惯直接npm install typescript然后就开始写代码遇到错误时却一头雾水。实际上一个完整的 TypeScript 开发环境是一个精密的链条运行时环境 (Node.js)TypeScript 代码最终需要被编译成 JavaScript 并在某个环境中执行。对于后端或工具链开发这个环境通常是 Node.js。Node.js 的版本直接决定了你能使用的 JavaScript 语法特性如 ES2022 的顶级 await以及原生模块系统。包管理器 (npm/yarn/pnpm)用于管理项目依赖如 TypeScript 编译器本身、各种类型声明包types/*。不同的包管理器在依赖解析、安装速度、磁盘空间占用和node_modules结构上差异巨大选错会影响整个团队的开发效率。编译器核心 (TypeScript Compiler, tsc)将.ts文件转换为.js文件的核心工具。它通过tsconfig.json文件接受配置控制编译目标、模块系统、严格性检查等数百个选项。构建与开发工具链 (Vite/Webpack/ts-node/tsx)在开发过程中我们需要实时编译、热更新、打包等能力。tsc通常只负责类型检查和编译而ts-node、tsx或基于 Vite/Webpack 的插件则提供了更流畅的开发体验。环境问题的典型症状包括Cannot find module、SyntaxError: Unexpected token、The current version of Node.js does not support...。这些问题 90% 以上都源于上述链条中某一环的版本不匹配或配置错误。因此我们的安装策略必须是“自上而下版本锁定工具择优”。2. 核心工具选型不只是安装而是选择最适合的生态2.1 Node.js拥抱 LTS使用版本管理器永远不要从系统包管理器如apt或直接下载安装包来管理 Node.js。这会导致版本混乱、权限问题且难以切换。务必使用 Node.js 版本管理器。nvm (Node Version Manager)macOS/Linux 用户的首选。它通过 shell 脚本管理多个独立的 Node.js 版本。nvm-windowsWindows 用户的官方选择功能与 nvm 类似。fnm (Fast Node Manager)跨平台使用 Rust 编写速度极快是现代化的替代选择。版本选择建议选择最新的长期支持 (LTS)版本。截至撰写时Node.js 20.x 是活跃的 LTS 版本。它提供了稳定的 API、安全更新并且兼容绝大多数主流库。2.2 包管理器告别 npm拥抱 pnpm 或 yarn虽然 Node.js 自带npm但其性能和node_modules的磁盘占用一直是痛点。对于新项目强烈建议使用更现代的包管理器。pnpm当前最推荐的选择。它使用硬链接和符号链接极大节省磁盘空间安装速度极快并且通过严格的node_modules结构避免了“幽灵依赖”问题。yarn (v1)经典的替代方案引入了yarn.lock文件确保依赖一致性。npm仅在你需要绝对兼容性或处理遗留项目时使用。2.3 TypeScript 编译器全局安装 vs 项目安装一个常见的误区是全局安装 TypeScript (npm install -g typescript)。这会导致不同项目依赖不同 TypeScript 版本时产生冲突。最佳实践仅在项目中安装 TypeScript。将typescript作为devDependencies安装确保每个项目都能锁定自己所需的编译器版本。# 在项目根目录下执行 pnpm add -D typescript # 或 yarn add -D typescript # 或 npm install -D typescript2.4 开发执行工具ts-node 与 tsx在开发阶段我们不想每次修改都手动执行tsc编译再运行.js文件。我们需要一个能直接执行.ts文件的工具。ts-node老牌工具功能丰富支持 REPL 和配置文件 (tsconfig.json)。tsx基于 ESBuild 的新兴工具启动速度极快兼容性优秀是目前开发体验的最佳选择之一。它通常与ts-node二选一即可。我们将以nvm pnpm TypeScript (项目安装) tsx作为本次环境搭建的技术栈组合。3. 逐步搭建从零开始配置你的 TypeScript 开发环境3.1 第一步使用 nvm 安装并管理 Node.jsmacOS/Linux 系统打开终端安装或更新 nvm。可以从 nvm 官方仓库 获取最新安装命令。curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash安装后重启终端或执行source ~/.bashrc(或~/.zshrc) 使 nvm 生效。安装最新的 Node.js LTS 版本。nvm install --lts使用该版本并设置为默认版本。nvm use --lts nvm alias default node # 将当前使用的版本设为默认验证安装。node --version # 应输出类似 v20.11.1 npm --version # 应输出对应版本号Windows 系统从 nvm-windows 发布页 下载nvm-setup.exe并安装。以管理员身份打开 PowerShell 或 CMD。安装并使用 Node.js LTS。nvm list available # 查看可安装版本 nvm install 20.11.1 # 安装指定 LTS 版本 nvm use 20.11.1 # 使用该版本验证安装命令与 macOS/Linux 相同。3.2 第二步安装 pnpm替代 npmNode.js 安装后自带npm。我们使用npm来全局安装pnpm。npm install -g pnpm安装后验证并查看其帮助信息pnpm --version pnpm --help配置 pnpm 镜像可选但推荐国内加速pnpm config set registry https://registry.npmmirror.com/3.3 第三步初始化一个 TypeScript 项目创建一个新的项目目录并进入。mkdir my-ts-project cd my-ts-project使用pnpm初始化项目生成package.json。pnpm init一路回车使用默认值或根据提示输入项目信息。在项目中安装 TypeScript 编译器。pnpm add -D typescript生成 TypeScript 默认配置文件tsconfig.json。npx tsc --init注意这里使用了npx它会临时调用项目node_modules下的tsc命令。如果提示npx不可用也可以使用pnpm dlx tsc --init。3.4 第四步配置 tsconfig.json生成的tsconfig.json包含大量被注释的选项。对于新手我们聚焦几个最关键的配置。打开tsconfig.json文件进行如下修改{ compilerOptions: { /* 语言和环境 */ target: ES2022, // 编译生成的 JS 目标版本推荐较新的 ES2022 lib: [ES2022], // 指定要包含的库文件与 target 匹配 module: NodeNext, // 模块系统。Node.js 项目推荐 NodeNext以支持 ESM moduleResolution: NodeNext, // 模块解析策略与 module 配套 /* JavaScript 支持 */ allowJs: true, // 允许编译 JS 文件 checkJs: true, // 在 .js 文件中报告错误 /* 类型检查 */ strict: true, // 启用所有严格类型检查选项这是 TypeScript 的核心价值 skipLibCheck: true, // 跳过库文件的类型检查加快编译速度 /* 互操作性 */ esModuleInterop: true, // 改善 CommonJS/ES Module 的互操作性 allowSyntheticDefaultImports: true, // 允许对没有默认导出的模块进行默认导入 /* 输出 */ outDir: ./dist, // 指定编译输出目录 rootDir: ./src, // 指定源代码根目录保持项目结构清晰 /* 高级 */ forceConsistentCasingInFileNames: true, // 强制文件名大小写一致 resolveJsonModule: true // 允许导入 JSON 文件 }, include: [src/**/*], // 指定要编译的文件路径 exclude: [node_modules, dist] // 排除不编译的目录 }关键解释strict: true务必开启。它开启了所有严格的类型检查是 TypeScript 避免运行时错误的最大利器。outDir和rootDir这是一种经典的项目结构将源代码 (src) 和编译产物 (dist) 分离。module: NodeNext为未来的 Node.js 生态ES Modules做好准备。3.5 第五步安装开发执行工具 tsx为了在开发时直接运行.ts文件我们安装tsx。pnpm add -D tsx3.6 第六步创建项目结构并编写示例代码创建源代码目录和入口文件。mkdir src touch src/index.ts编辑src/index.ts写入一个简单的 TypeScript 示例。// src/index.ts // 定义一个用户接口 interface User { id: number; name: string; email: string; } // 一个创建欢迎信息的函数使用强类型参数 function createWelcomeMessage(user: User): string { return Hello, ${user.name}! Your user ID is ${user.id}.; } // 示例数据 const currentUser: User { id: 1, name: Alice, email: aliceexample.com, }; // 调用函数并输出 const message createWelcomeMessage(currentUser); console.log(message); // 一个简单的异步函数示例展示现代 JS 语法 async function fetchData(url: string): Promisevoid { try { const response await fetch(url); // 这里需要 Node.js 18 或 polyfill const data await response.json(); console.log(Fetched data:, data); } catch (error) { console.error(Failed to fetch data:, error); } } // 执行此处仅作演示实际运行可能需要 node-fetch // fetchData(https://api.example.com/data);修改package.json添加启动脚本。{ name: my-ts-project, version: 1.0.0, description: , main: dist/index.js, scripts: { dev: tsx watch src/index.ts, // 使用 tsx 监听模式运行 build: tsc, // 使用 tsc 编译 start: node dist/index.js // 运行编译后的 JS }, keywords: [], author: , license: ISC, devDependencies: { tsx: ^4.7.0, typescript: ^5.3.3 } }4. 运行、构建与验证完成开发闭环4.1 开发模式运行使用tsx的监听模式文件更改后会自动重新运行。pnpm run dev你将在终端看到输出Hello, Alice! Your user ID is 1.。尝试修改src/index.ts中的name保存后观察终端是否自动更新。4.2 构建项目执行编译将 TypeScript 代码转换为 JavaScript 代码到dist目录。pnpm run build检查是否生成了dist/index.js文件。其内容应该是编译后的 ES2022 JavaScript 代码。4.3 生产模式运行运行编译后的 JavaScript 文件。pnpm start输出应与开发模式一致。这模拟了将代码部署到生产环境后的执行过程。5. 环境配置进阶让开发更高效5.1 配置 ESLint 与 Prettier代码质量与风格一个专业的项目离不开代码检查和格式化。安装依赖。pnpm add -D eslint typescript-eslint/parser typescript-eslint/eslint-plugin prettier eslint-config-prettier生成 ESLint 配置文件。npx eslint --init根据交互提示选择To check syntax and find problems - JavaScript modules (import/export) - TypeScript - Node - Use a popular style guide - Airbnb - JSON。完成后会生成.eslintrc.json。修改.eslintrc.json确保其扩展了 TypeScript 和 Prettier 配置。{ env: { node: true, es2022: true }, extends: [ eslint:recommended, plugin:typescript-eslint/recommended, prettier // 必须放在最后覆盖冲突规则 ], parser: typescript-eslint/parser, parserOptions: { ecmaVersion: latest, sourceType: module }, plugins: [typescript-eslint], rules: {} }创建 Prettier 配置文件.prettierrc。{ semi: true, singleQuote: true, tabWidth: 2, trailingComma: es5 }在package.json中添加脚本。scripts: { // ... 其他脚本 lint: eslint src --ext .ts, lint:fix: eslint src --ext .ts --fix, format: prettier --write \src/**/*.ts\ }5.2 配置热重载与调试VSCode在 VSCode 中你可以获得极佳的 TypeScript 开发体验。安装插件ESLint, Prettier - Code formatter。配置调试在项目根目录创建.vscode/launch.json。{ version: 0.2.0, configurations: [ { type: node, request: launch, name: Debug TS with tsx, program: ${workspaceFolder}/src/index.ts, runtimeExecutable: ${workspaceFolder}/node_modules/.bin/tsx, skipFiles: [node_internals/**], console: integratedTerminal }, { type: node, request: launch, name: Debug JS (Build Output), program: ${workspaceFolder}/dist/index.js, outFiles: [${workspaceFolder}/dist/**/*.js] } ] }现在你可以在 VSCode 中直接打断点调试.ts源文件了。6. 常见问题与精准排查指南环境问题千奇百怪但排查路径有章可循。遇到报错请按以下顺序检查。问题现象可能原因排查方式解决方案Command ‘tsc’ not found1. TypeScript 未安装。2. 未使用npx或项目本地tsc。1. 检查package.json的devDependencies。2. 运行npx tsc --version或./node_modules/.bin/tsc --version。1. 执行pnpm add -D typescript。2. 始终使用npx tsc或配置 npm scripts。Cannot find module ‘xxx’1. 依赖未安装。2.tsconfig.json中moduleResolution配置错误。3. 文件扩展名或路径错误。1. 检查node_modules是否存在该包。2. 确认导入语句路径。3. 检查tsconfig.json的compilerOptions.paths如有。1. 安装依赖pnpm add xxx。2. 确保moduleResolution设置为NodeNextNode项目。3. 使用相对路径./或绝对路径别名。SyntaxError: Unexpected token ‘export’生成的 JS 文件使用了 ES Module 语法 (import/export)但 Node.js 以 CommonJS 模式运行。1. 检查tsconfig.json的module字段。2. 检查package.json是否有type: module。1. 如果项目是 CommonJS设置module: CommonJS。2. 如果项目是 ESM设置module: ESNext并在package.json中添加type: module。类型错误Type ‘X’ is not assignable to type ‘Y’TypeScript 严格类型检查报错。仔细阅读错误信息定位到具体的变量和行号。1. 检查接口定义是否匹配。2. 使用类型断言as需谨慎。3. 考虑调整类型设计。不要轻易关闭strict模式pnpm install极慢或失败网络连接问题或镜像未配置。运行pnpm config get registry查看当前镜像。设置国内镜像pnpm config set registry https://registry.npmmirror.com/VSCode 类型提示不工作1. VSCode 使用的 TypeScript 版本不对。2. 工作区未加载正确的tsconfig.json。1. 查看 VSCode 底部状态栏 TypeScript 版本号。2. 按CtrlShiftP输入 “TypeScript: Select TypeScript Version”。1. 选择 “Use Workspace Version”。2. 确保项目根目录有tsconfig.json。7. 最佳实践与工程化建议版本锁定始终使用pnpm-lock.yaml、yarn.lock或package-lock.json文件。并将其提交到版本控制系统确保所有开发者环境一致。脚本标准化在package.json的scripts中定义所有常用命令dev,build,lint,test。新成员只需pnpm install后即可运行标准脚本。目录结构清晰坚持src(源码)、dist(输出)、test(测试) 分离。在tsconfig.json中配置好rootDir和outDir。启用严格模式tsconfig.json中的strict: true是 TypeScript 价值的核心。从项目开始就启用它虽然初期会有些痛苦但能避免无数潜在的运行时错误。区分依赖使用dependencies存放项目运行所需的库使用devDependencies存放构建、测试、格式化和类型检查等开发工具。这有助于生产环境构建优化。考虑使用模板对于企业或团队可以基于这套配置创建一个项目模板仓库使用degit、create-xxx-app或自定义脚本快速初始化新项目统一技术栈和代码规范。8. 总结从环境开始掌控你的 TypeScript 项目搭建 TypeScript 开发环境远不止是运行几条安装命令。它是一次对项目底层工程化基础的审视和构建。通过本文我们系统性地完成了从 Node.js 版本管理、包管理器选型、TypeScript 编译器配置到开发工具链集成和代码质量管控的全流程。关键收获在于理解工具链中各环节的职责与协作关系nvm提供了纯净且可切换的运行时pnpm提供了高效可靠的依赖管理TypeScript通过tsconfig.json提供了强大的静态类型保障而tsx、ESLint、Prettier则共同塑造了流畅的开发体验。当环境出现问题时你现在应该能够沿着这条依赖链从 Node.js 版本到tsconfig配置进行有条不紊的排查。下一步你可以尝试将这套环境用于一个具体的项目类型比如开发一个 CLI 工具、一个 Web API 服务器或是一个前端组件库。届时你会遇到更具体的配置需求例如构建优化、测试框架集成、Docker 容器化等但你现在拥有的这套稳定、可复现的基础环境将是应对所有复杂挑战的坚实起点。建议你将本文的配置保存下来作为未来每一个新 TypeScript 项目的标准初始化清单。

相关新闻

自考备考AI工具测评与效率提升方案

自考备考AI工具测评与效率提升方案

1. 项目背景与核心价值作为一名长期关注成人教育领域的从业者,我注意到近年来自学考试备考方式正在经历数字化转型。特别是在AI技术普及的背景下,各类智能辅助工具如雨后春笋般涌现。这个测评榜单的诞生,源于三个关键发现:首先&am…

2026/8/10 3:15:36 阅读更多 →
AME欧服高分局一号位瘟疫法师打法解析:从技能机制到实战策略

AME欧服高分局一号位瘟疫法师打法解析:从技能机制到实战策略

在DOTA2的高分段对局中,一号位英雄的选择往往决定了团队的后期走向和战术核心。近期,欧服天梯排名第97位的顶尖选手AME,在一场关键对局中操刀了一号位瘟疫法师(Necrophos,俗称NEC或死灵法),为我…

2026/8/10 3:14:35 阅读更多 →
微电网电源容量鲁棒优化与Matlab实现

微电网电源容量鲁棒优化与Matlab实现

1. 微网多电源容量配置的工程挑战与鲁棒优化价值在现代电力系统向分布式能源转型的背景下,微电网作为集成可再生能源、储能系统和传统发电单元的关键载体,其电源容量配置直接决定了系统的经济性和可靠性。然而,风电、光伏等可再生能源的间歇性…

2026/8/10 3:14:35 阅读更多 →

最新新闻

AI模型智能指数评估实战:从原理到v4.1.1版本完整应用指南

AI模型智能指数评估实战:从原理到v4.1.1版本完整应用指南

最近在跟进一些开源项目时,发现一个名为Artificial Analysis的“智能指数”工具更新到了 v4.1.1 版本。对于需要快速评估、对比AI模型或智能系统能力的开发者来说,这类量化工具能极大提升效率。但网上的资料往往比较零散,要么只讲安装&#x…

2026/8/10 7:15:34 阅读更多 →
Codex AI助手部署与集成指南:从环境搭建到API调用

Codex AI助手部署与集成指南:从环境搭建到API调用

这次我们来看一个名为 Codex 的项目。从网络热度和搜索趋势来看,Codex 被广泛讨论为“最强 AI 助手”,涉及安装、使用、接入 DeepSeek 等多个具体场景。它很可能是一个集成了大模型能力的 AI 代理或编程助手平台,能够通过本地或云端模型提供智…

2026/8/10 7:15:34 阅读更多 →
Java大厂面试全攻略:核心知识点与实战技巧

Java大厂面试全攻略:核心知识点与实战技巧

1. 互联网大厂Java技术面试全景解析作为一名经历过多次大厂技术面试的Java开发者,我深知面试过程中的每个环节都至关重要。今天我将以"谢飞机"这个虚构角色的3轮技术面试经历为蓝本,带大家深入剖析互联网大厂Java岗位的面试全流程。大厂Java技…

2026/8/10 7:15:34 阅读更多 →
贪吃的苹果蛇第七关通关攻略:身体搭桥与逆向路径规划详解

贪吃的苹果蛇第七关通关攻略:身体搭桥与逆向路径规划详解

最近在玩《贪吃的苹果蛇》时,发现第七关的难度曲线陡然上升,不少玩家卡在这里反复尝试。这关巧妙融合了空间转向、路径规划和时机把握,是检验对游戏机制理解深度的关键一关。本文将为你完整拆解第七关的通关思路、核心操作技巧以及一套稳定可…

2026/8/10 7:15:34 阅读更多 →
Python3+Selenium+BeautifulSoup实现高效网页数据采集与存储

Python3+Selenium+BeautifulSoup实现高效网页数据采集与存储

1. 项目概述最近在做一个需要从多个网站采集数据的项目,经过对比各种技术方案,最终选择了Python3SeleniumBeautifulSoup这套组合拳。这套方案最大的优势是既能处理动态加载的网页内容,又能高效解析HTML结构,最后还能把清洗好的数据…

2026/8/10 7:15:34 阅读更多 →
LLM长对话记忆管理:协作式分页与关键词书签技术解析

LLM长对话记忆管理:协作式分页与关键词书签技术解析

1. 项目概述:当LLM对话变长,我们如何记住一切?如果你和我一样,深度使用过大语言模型进行过长时间的对话,无论是用它来辅助编程、进行复杂的头脑风暴,还是撰写一篇长文,你肯定遇到过这个令人头疼…

2026/8/10 7:14:34 阅读更多 →

日新闻

GraphQL-CSS API全解析:useGqlCSS、GqlCSS组件与getStyles实用指南

GraphQL-CSS API全解析:useGqlCSS、GqlCSS组件与getStyles实用指南

GraphQL-CSS API全解析:useGqlCSS、GqlCSS组件与getStyles实用指南 【免费下载链接】graphql-css A blazing fast CSS-in-GQL™ library. 项目地址: https://gitcode.com/gh_mirrors/gr/graphql-css GraphQL-CSS是一个基于GraphQL的CSS-in-GQL™库&#xff0…

2026/8/10 0:00:02 阅读更多 →
告别语言障碍:KISS Translator 双语翻译插件终极指南

告别语言障碍:KISS Translator 双语翻译插件终极指南

告别语言障碍:KISS Translator 双语翻译插件终极指南 【免费下载链接】kiss-translator A simple, open source bilingual translation extension & Greasemonkey script (一个简约、开源的 双语对照翻译扩展 & 油猴脚本) 项目地址: https://gitcode.com/…

2026/8/10 0:00:02 阅读更多 →
BepInEx配置管理器:游戏插件配置的终极可视化解决方案

BepInEx配置管理器:游戏插件配置的终极可视化解决方案

BepInEx配置管理器:游戏插件配置的终极可视化解决方案 【免费下载链接】BepInEx.ConfigurationManager Plugin configuration manager for BepInEx 项目地址: https://gitcode.com/gh_mirrors/be/BepInEx.ConfigurationManager 你是否曾经因为游戏插件的复杂…

2026/8/10 0:00:02 阅读更多 →

周新闻

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁 【免费下载链接】baidupankey 在线查询网盘提取码(维护中 rm repo) 项目地址: https://gitcode.com/gh_mirrors/ba/baidupankey 你是否曾经在深夜寻找一份重要资料&#x…

2026/8/10 1:05:29 阅读更多 →
如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南 【免费下载链接】chinese_license_plate_generator 中国车牌生成器 项目地址: https://gitcode.com/gh_mirrors/ch/chinese_license_plate_generator 中国车牌生成器是一个基于Python的开源项目&#xff0c…

2026/8/10 1:05:29 阅读更多 →
收藏!小白程序员轻松入门大模型,从Harness工程开始实践

收藏!小白程序员轻松入门大模型,从Harness工程开始实践

文章强调学习大模型不应只关注模型本身,而应重视模型外的系统搭建,即Harness。提出AgentModelHarness的实用公式,详细介绍Harness的四个层次:持久化层、执行层、控制层和观察与验证层。文章还探讨了上下文工程、工具设计、AGENTS.…

2026/8/10 1:05:29 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/9 17:05:02 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/10 1:05:29 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/9 17:05:02 阅读更多 →