如何让捆绑恐惧症在导出分析中显示不同的尺寸?

Ric*_*ler 5 javascript bundling-and-minification rollupjs terser

所以我使用bundlephobia来审核我的包的包大小。Bundlephobia 有一个名为“导出分析”的部分,它为您提供各个导出的包大小。

出口分析

因此,这个包中的每个函数都是纯函数,因此,除非我遗漏了某些东西,否则我认为每个函数应该显示较小的大小,但所有函数(除了重新导出的函数)都具有相同的大小。

我试过:

  • 添加"sideEffects": false"到我的package.json
  • 将每个函数标记为#__PURE__

我正在使用汇总,这是我的汇总配置

// rollup.config.js
import babel from '@rollup/plugin-babel';
import resolve from '@rollup/plugin-node-resolve';

const extensions = ['.js', '.ts', '.tsx'];

export default [
  {
    input: './src/index.ts',
    plugins: [
      resolve({
        extensions,
      }),
      babel({
        babelrc: false,
        presets: ['@babel/preset-env', '@babel/preset-typescript'],
        babelHelpers: 'bundled',
        extensions,
      }),
    ],
    output: {
      file: 'dist/index.js',
      format: 'umd',
      name: 'parseToRgba',
      sourcemap: true,
    },
  },
  {
    input: './src/index.ts',
    plugins: [
      resolve({
        extensions,
        modulesOnly: true,
      }),
      babel({
        babelrc: false,
        presets: ['@babel/preset-typescript'],
        plugins: ['@babel/plugin-transform-runtime'],
        babelHelpers: 'runtime',
        extensions,
      }),
    ],
    output: {
      file: 'dist/index.esm.js',
      format: 'esm',
      sourcemap: true,
    },
    external: ['@ricokahler/parse-to-rgba'],
  },
];
Run Code Online (Sandbox Code Playgroud)

没什么。

我该怎么做呢?