官术网_书友最值得收藏!

Additions to compiler options

Just referencing another project isn't enough for the TypeScript compiler to properly handle multiple projects. We need to add some additional compiler options in the dependent project.

The compilerOptions field has a new field called composite, which must be set to true if we are using multiple projects. This ensures certain options are enabled so that this project can be referenced and built incrementally for any project that depends on it.

When composite is true, declaration must also be set to true, forcing the corresponding .d.ts file to be generated, containing the project's types. This allows TypeScript to only build dependent projects when types are changed and not rebuild all the dependent projects all the time.

Let's make the following changes to our working example:

  1. Let's open up tsconfig.json in the Shared project and make the following changes:
{
"compilerOptions": {
"composite": true,
"declaration": true,
...
},
}
  1. In the terminal, let's go to the Shared project directory and compile our Shared project:
cd ..
cd Shared
tsc

The project compiles okay. Let's now try to compile ProjectA again in the terminal:

cd ..
cd ProjectA
tsc

   This time, ProjectA compiles just fine.

So, we have successfully tied together two projects using TypeScript 3's multiple projects feature. In the next section, we'll improve the setup of our projects even more.

主站蜘蛛池模板: 夏邑县| 潼关县| 淄博市| 双峰县| 宝坻区| 九江县| 瑞金市| 教育| 华亭县| 文安县| 临夏县| 康马县| 文昌市| 青田县| 和政县| 邳州市| 连南| 清远市| 灵川县| 克什克腾旗| 久治县| 商水县| 乐亭县| 水富县| 四平市| 南丹县| 和硕县| 尚志市| 汝城县| 安宁市| 恭城| 漾濞| 睢宁县| 剑阁县| 新平| 柳林县| 江山市| 阳山县| 宁化县| 桐庐县| 津市市|