Как включить пользовательские определения типов typescript в angular 2?

Я не понимаю, как файлы пользовательских определений типов включаются в приложения typescript. Например, приложение и src/custom-typings.d.ts файл, содержащий пользовательские определения типов. Как этот файл включен?

Я пытался переименовать этот файл и он все равно включен. Расширение файла может быть *.ts (не только *.d.ts). Есть ли определения типов поиска webpack в каждом *.ts файл в проекте? Если да, то как изменить это поведение? Как сказать webpack для поиска определений типов в определенном файле?

2 ответов


Ну, это не Webpack кто ищет *.ts, если вы не используете TS-загрузчики. Есть много библиотек на основе Javascript, таких как lodash, если вы хотите использовать их в проекте angular2, и вы используете typescript для разработки, вам нужно использовать typings.

что typings?

читайте ответ здесь

Как загрузить .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 file

Я надеюсь, что я мог бы объяснить, и это поможет вам!


Не изменяйте расширение этого файла. Просто добавьте ссылку на свое пользовательское определение внутри этого файла, используя тройную косую черту:

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