Потрясение дерева веб-пакетов в пользовательской библиотеке пользовательского интерфейса, импортированной в приложение Create React - PullRequest
0 голосов
/ 04 марта 2020

У меня есть собственная библиотека компонентов пользовательского интерфейса. В нем около 40 компонентов. Компоненты находятся в папке sr c, разделенной папками. Составлено babel: BABEL_ENV=production babel src -d lib. Мой babel.config:

module.exports = function (api) {
  api.cache(true);

  const presets = [
    [
      '@babel/preset-env',
      {
        targets: {
          node: 'current',
        },
      },
    ],
    '@babel/preset-react',
    '@babel/preset-flow'
  ];
  const plugins = [
    ['transform-imports', {
      '@material-ui/core': {
        transform: '@material-ui/core/esm/${member}',
        preventFullImport: true
      },
      '@material-ui/icons': {
        transform: '@material-ui/icons/esm/${member}',
        preventFullImport: true
      }
    }]
  ];

  return {
    presets,
    plugins
  };
};

Вы можете заметить, что для "встряхивания дерева" я использую плагин transform-import.

Я импортирую эту библиотеку в Create-React-App. Запуская аналитику в моей сборке, кажется, что мой гид по стилю берет большую часть сборки: enter image description here

Я точно знаю, что не использую большой значок в сборке, Это означает, что веб-пакет не может удалить не импортированный код. Я, очевидно, использую импорт верхнего уровня: import { A } from 'styleguide/lib'.

Интересно, что мне не хватает. CRA использует веб-пакет 4.41.5. Это проблема в проекте или в библиотеке?

...