汇总不捆绑声明文件

时间:2018-08-07 07:28:08

标签: node.js typescript build rollupjs

我正在尝试使用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进行构建时,它会在我的构建文件夹中创建它:

enter image description here

将index.js捆绑在一起的地方很好,但是这里的声明文件只是从/common文件夹导入的,该文件夹基本上包含src目录中的所有其他文件夹,但只有一个每个文件夹的声明文件,此外,这些文件尝试使用paths别名进行导入,而不是使用相对导入进行构建,因此它们不起作用。

如何告诉汇总而不是构建单个声明文件?

1 个答案:

答案 0 :(得分:1)

rollup-plugin-typescript保留声明文件的文件夹结构。要同时捆绑声明,您还应该使用rollup-plugin-tshttps://github.com/wessberg/rollup-plugin-ts