node.js - Rollup 不捆绑声明文件
问题描述
我正在尝试构建一个使用 TypeScript 制作的库。我正在使用中的paths
属性tsconfig.json
。
我的tsconfig.json
样子是这样的:
{
"compilerOptions": {
"module": "es2015",
"moduleResolution": "node",
"target": "es2015",
"noImplicitAny": true,
"removeComments": true,
"preserveConstEnums": true,
"experimentalDecorators": true,
"sourceMap": true,
"lib": [
"esnext",
"dom"
],
"strict": true,
"sourceRoot": "./src",
"rootDir": "./src",
"outDir": "build",
"declaration": true,
"declarationDir": "build",
"baseUrl": "./src",
"noUnusedLocals": true,
"paths": {
"modules/*": [
"modules/*"
],
"common/*": [
"common/*"
]
}
},
"exclude": [
"node_modules",
"build"
]
}
我的汇总配置如下所示:
import typescript from 'rollup-plugin-typescript2'
export default {
entry: "./src/index.ts",
output: {
file: './build/index.js',
format: 'cjs'
},
plugins: [
typescript({ typescript: require("typescript"), declaration: true, clean: true })
]
}
但是,当我使用 构建时rollup -c
,它会在我的构建文件夹中创建它:
index.js 捆绑得很好,但是这里的声明文件只是从/common
文件夹中导入,并且该文件夹基本上包含目录中的所有其他文件夹,src
但每个文件夹只有一个声明文件,此外,这些文件尝试使用导入别名而不是使用相对导入构建的paths
,因此它们不起作用。
我如何告诉汇总构建单个声明文件而不是这个?
解决方案
rollup-plugin-typescript
保留声明文件的文件夹结构。要捆绑声明,您也应该使用rollup-plugin-ts
:
https ://github.com/wessberg/rollup-plugin-ts
推荐阅读
- node.js - 在 npm preversion 脚本中获取版本
- css - 当有很多项目时,在引导导航栏中制作垂直滚动条
- android - 我有问题女巫旋转屏幕我想保存我的数组“卡片”和 var 索引以用于下一个活动
- amazon-web-services - AWS Amazon Athena 无法使用 BOOLEAN 字段对数据进行分区
- reactjs - 无法获取/显示输入值
- python-3.x - 使用 python 连接到 REST api: TypeError: 'dict' object is not callable
- c - 为什么 corecrt.h 在 VS2019 中给我这个错误?
- python - 如何在 Django REST Framework ModelSerializer 的创建函数中使用 field.set()?
- kubernetes - 无法从 Azure Kubernetes 服务中的另一个 pod 访问 pod
- php - 特定用户的sql查询日志