2017-01-30 4 views
1

настоящее время я использую «глотка», чтобы сгенерировать файл определения моего расслоения, как это:Сформировать расслоение файл определения машинопись с WebPack

dtsGenerator.default({ 
    name: 'ngFramework', 
    project: './', 
    out: './Typings/raw/index.d.ts' 
}); 

Однако я мигрируют в WebPack, и я хотел бы найти способ сделать то же самое. Я попробовал флаг «объявление» в «tsconfig», но он просто создает файл определения для каждого отдельного файла «ts», который не является тем, что я хочу (я хочу файл определения пакета).

Я пробовал «dtsbundler-webpack-plugin», но я не мог заставить его работать должным образом. Без флага «объявления» «tsconfig» сгенерированный файл «0 байт», и вместе с ним у меня много ошибок.

ответ

3

Вы должны использовать dts-bundle с WebPack для создания пакета. Вы должны оставить флаг декларации истина и попробуйте следующее:

Общие

var path = require('path'); 
var rootDir = path.resolve(__dirname); 

Написать простой плагин

function DtsBundlePlugin() {} 
DtsBundlePlugin.prototype.apply = function (compiler) { 
    compiler.plugin('done', function() { 
     var dts = require('dts-bundle'); 

     dts.bundle({ 
      name: 'your-lib-name', 
      main: rootDir + '/build/types/**/*.d.ts', 
      out: rootDir + '/build/index.d.ts', 
      removeSource: true, 
      outputAsModuleFolder: true 
     }); 
    }); 
}; 

Более подробную информацию можно найти in this blog post by Vladimir Tolstikov.

Регистрация

plugins: [ 
    new DtsBundlePlugin() 
] 

мне удалось связать с типизации, но у меня были некоторые проблемы с комплектного кода, которые связаны с моим исходным кодом.

+1

Это очень похоже на код из [этого сообщения в блоге Владимира Толстикова] (https://medium.com/@vladimirtolstikov/how-to-merge-d-ts-typings-with-dts-bundle-and -webpack-e8903d699576). Вы скопировали его оттуда? Если да, то предоставление кредита было бы достойным вас. –

+0

Да, я использовал образец из своего сообщения в блоге, спасибо, что напомнил мне добавить ссылку на оригинал сообщения. – khorvat

Смежные вопросы