webpack 如何防止测试被汇总捆绑?

bcs8qyzn  于 2022-11-13  发布在  Webpack
关注(0)|答案(2)|浏览(182)

我正在构建一个react组件包,并希望将tests文件夹排除在从rollup构建的dist文件中。
运行rollup -c后,文件结构如下所示

.
├── dist
│   ├── index.js
│   ├── tests
│      ├── index.test.js
├── src
│   ├── index.tsx
│   ├── tests
│      ├── index.test.tsx

我的汇总配置如下所示:

import typescript from 'rollup-plugin-typescript2'

import pkg from './package.json'

export default {
  input: 'src/index.tsx',
  output: [
    {
      file: pkg.main,
      format: 'cjs',
      exports: 'named',
      sourcemap: true,
      strict: false
    }
  ],
  plugins: [typescript()],
  external: ['react', 'react-dom', 'prop-types']
}

运行汇总时,如何排除将测试目录捆绑到dist文件中?

5lwkijsr

5lwkijsr1#

如果你关心测试文件的类型检查,而不是在tsconfig.json中排除它们,那么在rollup.config.js中将排除作为汇总typescript插件的一个参数。

plugins: [
  /* for @rollup/plugin-typescript */
  typescript({
    exclude: ["**/__tests__", "**/*.test.ts"]
  })

  /* or for rollup-plugin-typescript2 */
  typescript({
    tsconfigOverride: {
      exclude: ["**/__tests__", "**/*.test.ts"]
    }

  })
]
eufgjt7s

eufgjt7s2#

您可以在tsconfig.json中排除测试,例如:

"exclude": [
    "**/tests",
    "**/*.test.js",
  ]

相关问题