references配置项详解

news/2025/1/17 7:56:49/

references

在 TypeScript 的 tsconfig.json 配置文件中,references 配置项用于设置项目间的依赖关系。它主要用于多项目的构建流程中,特别是在 Project References(项目引用)中,帮助 TypeScript 确定不同项目之间的依赖和构建顺序。这种配置适用于将多个 TypeScript 项目分割成小的子项目进行构建,提高构建效率和模块化管理。

references 的基本作用
  • references 是一个数组,每个元素描述一个外部 TypeScript 项目(另一个 tsconfig.json 文件)。
  • 在一个 TypeScript 项目中使用 references 配置项,可以指定该项目依赖于其他项目。TypeScript 会自动解析依赖关系,并按照正确的顺序进行构建。
  • references 配置项在 项目引用(Project References) 模式中非常有用,能够让 TypeScript 在构建过程中进行增量构建,而不需要重新构建所有项目。
path 配置项
  • path 是 references 配置项中必需的字段,指定一个相对路径或绝对路径,指向另一个 tsconfig.json 文件的位置。
  • TypeScript 会根据 path 指定的位置找到另一个项目,并将其作为当前项目的依赖项。
composite 配置项
  • composite 是 tsconfig.json 中的一个 compilerOptions 配置项,在启用项目引用时,它必须被设置为 true
  • 启用 composite 后,TypeScript 会在项目构建时创建 .tsbuildinfo 文件,这是 TypeScript 用来存储增量构建信息的文件。它可以加速后续构建,只重建那些发生变化的部分。
  • 只有启用了 composite 的项目才能作为其他项目的引用。
tsconfig.build.json 和 references 配置

在大型项目中,通常会有一个专门的构建配置文件,例如 tsconfig.build.json,它仅用于项目引用和构建,而不包含开发环境的设置。这个文件通常包含 references 配置项,指向所有的子项目。

总结

  • references 配置项是 TypeScript 在多项目构建中使用的重要配置项,它用于指定项目间的依赖关系。
  • 通过 references,TypeScript 可以正确地确定构建顺序,进行增量构建,提高构建效率。
  • 项目引用模式必须启用 composite 配置项,且每个被引用的项目应配置正确的 outDir
  • 使用项目引用可以将大型项目拆分为多个子项目,使得每个子项目可以独立构建,从而提高管理效率和构建速度。

http://www.ppmy.cn/news/1563837.html

相关文章

搭建 RUST 交叉编译环境

在嵌入式 Linux 上运行 RUST 在嵌入式 Linux 上运行 RUST构造交叉编译的 RUST 环境编译代码其他 参考文档 在嵌入式 Linux 上运行 RUST 最近在开发 zynq 相关的产品,想使用 rust 来开发应用程序;所以研究了一下如何在 pc 上进行 rust 的交叉编译。 本人…

DCU异构程序--矩阵乘

目录 一、概述 二、程序实现 三、编译运行 一、概述 HIP属于显式编程模型,需要在程序中明确写出并行控制语句,包括数据传输、核函数启动等。核函数是运行在DCU上的函数,在CPU端运行的部分称为主机端(主要是执行管理和启动&…

vscode——如何让标点总是成对出现

vscode——如何让标点总是成对出现: 打开vscode,在设置中输入editor.autoClosing 将设置参数全部改成always

Windows Subsystem for Linux (WSL) 中安装 Redis

在 Windows Subsystem for Linux (WSL) 中安装 Redis 是一个常见的开发环境设置过程。以下是详细步骤,适用于 Ubuntu 或其他基于 Debian 的 Linux 发行版。 ✅ 步骤 1:打开 WSL 终端 首先,确保你已经在 Windows 上启用了 WSL,并安…

uniapp小程序开发,配置开启小程序右上角三点的分享功能

直接全局配置一个分享的功能,要不然需要一个一个页面去单独配置就太麻烦了!!! 1.新建一个share.js文件,并配置代码,调用onShareMessage()和onShareTimeline()两个函数。 其中: title&#xff1…

Windows图形界面(GUI)-QT-C/C++ - Qt键盘与鼠标事件处理详解

公开视频 -> 链接点击跳转公开课程博客首页 -> ​​​链接点击跳转博客主页 目录 事件处理机制概述 MFC与Qt事件处理对比 MFC事件处理 Qt事件处理 Qt事件传递机制 鼠标事件详解 鼠标事件类型 事件处理函数 ​编辑 鼠标相关信息与反馈 键盘事件详解 键盘事件…

台达、汇川伺服

台达 R、S、T 用 AC220V 时接 R、T,适用于 1.5kw 以下 DI、COM COM 接 24V,DI 接 0V 则使能。也可以反着来 DO、DO- DO 接 24V,DO- 使能时会输出 24V 新机上电/默认配置 报错 AL.013,DI8 急停报警,P2.017&#xff0…

机器学习中的凸函数和梯度下降法

一、凸函数 在机器学习中,凸函数 和 凸优化 是优化问题中的重要概念,许多机器学习算法的目标是优化一个凸函数。这些概念的核心思想围绕着优化问题的简化和求解效率。下面从简单直观的角度来解释。 1. 什么是凸函数? 数学定义 一个函数 f…