软件包结构

以下结构确保软件包在我们的 monorepo/Nx 工作流程中最佳地工作。

./package.json

  • 所有 TanStack 项目都有 "type": "module",用于将 .js 文件的默认解析设置为 ESM; 这对构建 CJS 没有任何影响
  • 拥有 "exports" 字段也至关重要
  • 出于遗留原因,您还应该包含 "main""module""types" 字段
  • 所有软件包都具有以下由 Nx 缓存的脚本:"test:eslint""test:types""test:lib""build""test:build"

./tsconfig.json

  • 扩展根级别的 tsconfig(例如 "extends": "../../tsconfig.json"
  • 在此处添加任何特定于框架的选项和包含的文件

./vite.config.ts

./src

  • 此文件夹应仅包含构建并交付给用户的代码
  • 测试不应放在此文件夹中,因为它们会使交付的代码膨胀,并可能无意中使 Nx 缓存失效

./tests

  • 此文件夹应包含所有测试文件
  • 它还应包含该框架所需的任何测试设置文件
订阅 Bytes

您每周的 JavaScript 新闻。每周一免费发送给超过 100,000 名开发者。

Bytes

没有垃圾邮件。随时取消订阅。