#node.js #typescript #npm #minify #uglifyjs
#node.js #машинописный текст #npm #минимизировать #uglifyjs
Вопрос:
Мне нужно опубликовать уменьшенную версию пакета NPM, написанного на Typescript. Чтобы скомпилировать приложение, я использую tsc -p .
command, и оно создает пакет в lib
папке. Я чувствую, что lib
это несколько похоже на src
папку с точки зрения размера, поскольку в нем есть ненужные папки, вложенные папки и файлы.
Можно ли уменьшить и превратить эту lib
папку в один index.min.js
файл?
P.S. этот пакет является инструментом CLI. Есть ли необходимость отправлять определения типов в d.ts
файлах? Все, что они содержат, это просто типы для функций и переменных, используемых в коде.
Спасибо!
Ответ №1:
Чтобы объединить все в один файл, вам нужно установить outFile
свойство в свойстве typescript
{
"compilerOptions": {
"outFile": "./lib/index.js"
// more configs here
},
"exclude": [
"node_modules"
]
}
Для минимизации вы должны использовать внешний инструмент, поскольку в Typescript для этого нет никаких опций, и, возможно, у него никогда не будет, поскольку это открытый запрос с 2014 года
Комментарии:
1. Не будет работать, так как я использую общий модуль JS
2. Но почему? Если вы хотите, чтобы все было в одном файле, вам не нужно использовать какой-либо модуль
3. Прежде всего, module — это не какой-то пакет, а ключ в tsconfig. Во-вторых, какова связь между конечным файлом сборки и модулем? Этот модуль используется только для включения инструкций импорта / экспорта.