Как удалить мертвый код в Create React App

У меня есть проект create-react-app, и я работаю над уменьшением размера файла JS в комплекте. Около половины моего размера пакета поступает из зависимости под названием MDBReact (библиотека компонентов react), и большая часть ее не используется. Я пытаюсь выяснить, как / если я могу удалить мертвый код с дрожанием дерева из связанной сборки. Я изучал это некоторое время, и ближайшая статья, которую я нашел, была этой. Эта статья оставляет меня в замешательстве, и она не дает никаких объясните, как и можно ли это сделать. Я также нашел этой руководство по встряхиванию дерева webpack, объясняющее, как это можно сделать, но это, похоже, не решает проблему.

1 ответов


CRA использует webpack для связывания кода. Webpack может использовать только модули treeshake es по умолчанию и модули commonjs при использовании плагинов.

чтобы помочь вам в пути, как вы в настоящее время импортируете из MDBReact?

похоже, что MDBReact не написан в модулях es, и поэтому webpack будет иметь жесткое встряхивание дерева, если вы используете следующий оператор импорта:

import { module } from 'MDBReact';

вместо этого вы можете попробовать импортировать с помощью после

import modules from 'MDBReact/module';

возможно, вам придется изменить путь к модулю в зависимости от структуры MDBReact. Посмотрите в папке node_modules, чтобы узнать.