如何在角度2中包含打字稿自定义类型定义?

时间:2016-07-09 21:58:09

标签: typescript angular webpack typescript-typings

我不明白在typescript应用程序中如何包含自定义类型定义文件。例如,this application包含src/custom-typings.d.ts文件,其中包含自定义类型定义。如何包含此文件?

我尝试重命名此文件,但无论如何它都包括在内。文件扩展名可以是*.ts(不仅是*.d.ts)。 webpack是否在项目的每个*.ts文件中搜索类型定义?如果是这样,那么如何改变这种行为呢?如何告诉webpack搜索特定文件中的类型定义?

2 个答案:

答案 0 :(得分:7)

除非您没有使用ts-loader,否则不会 Webpack 搜索* .ts。有很多基于Javascript的库,比如lodash,如果你想在你的angular2项目中使用它们,你使用的是打字稿,那么你必须使用打字。

什么是打字?

read the answer here

如何在项目中加载.d.ts文件? 例如,如果您使用angular2,那么您必须使用一些依赖,例如区域 如果你想为你的应用添加区域,你可以简单地做

import "zone.js/dist/zone";

然后查找d.ts文件并为您加载。

我像这样加载我的依赖

import "core-js";
import "zone.js/dist/zone";
import "reflect-metadata";
import "es6-shim";

如果查看node_modules / reflect-metadata,它包含reflect-metadata.d.ts文件

我希望我能解释一下,它会对你有帮助!

答案 1 :(得分:0)

请勿更改此文件的扩展名。只需使用三次斜杠表示法在此文件中添加自定义定义的引用:

/// <reference path="./your-custom-typing.d.ts">