Встряхивание деревьев с накоплением - PullRequest
0 голосов
/ 25 марта 2019

У меня есть проект, в котором я связываю библиотеку компонентов, используя Rollup (генерируя файл bundle.esm.js). Эти компоненты затем используются в другом проекте, который генерирует веб-страницы, которые используют эти компоненты - каждая страница использует разные компоненты. Проблема состоит в том, что вся библиотека компонентов всегда связана с различными пакетами страниц, независимо от того, какие компоненты я использую, что излишне увеличивает размер пакета.

Это мои настройки накопительного пакета:

import resolve from 'rollup-plugin-node-resolve';
import commonjs from 'rollup-plugin-commonjs';
import babel from 'rollup-plugin-babel';
import peerDepsExternal from 'rollup-plugin-peer-deps-external';
import pkg from './package.json';

const extensions = [
  '.js', '.jsx', '.ts', '.tsx',
];
export default [
  {
    input: './src/base/index.ts',
    plugins: [
      peerDepsExternal(),
      resolve({ extensions }),
      babel({
        exclude: 'node_modules/**',
        extensions,
      }),
      commonjs(),
    ],
    output: [
      { file: pkg.main, format: 'cjs', sourcemap: true },
      { file: pkg.module, format: 'es', sourcemap: true },
    ],
    watch: {
      clearScreen: false,
    },
  },
];

У меня также есть "модули", установленные в false в веб-пакете.

...