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

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.

主站蜘蛛池模板: 尖扎县| 新田县| 沁水县| 黔东| 吉隆县| 当阳市| 长寿区| 盐津县| 定陶县| 婺源县| 娱乐| 怀宁县| 株洲市| 武功县| 抚宁县| 新安县| 乌鲁木齐市| 平乡县| 重庆市| 拉萨市| 师宗县| 米易县| 灵璧县| 年辖:市辖区| 高邑县| 伊吾县| 怀安县| 静安区| 兰西县| 丰镇市| 嵊州市| 凤台县| 万全县| 临夏市| 临洮县| 洪洞县| 大荔县| 宝应县| 乌拉特前旗| 如皋市| 无棣县|