我正在尝试使用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
别名进行导入,而不是使用相对导入进行构建,因此它们不起作用。
如何告诉汇总而不是构建单个声明文件?
答案 0 :(得分:1)
rollup-plugin-typescript
保留声明文件的文件夹结构。要同时捆绑声明,您还应该使用rollup-plugin-ts
:
https://github.com/wessberg/rollup-plugin-ts