Я работаю над веб-приложением, которое использует next.js (^ 9.1.1) с @ zeit / next-less (^ 1.0.1). Я пытаюсь повысить производительность этого приложения. Я использую LightHouse для измерения производительности.
Раздел возможностей LightHouse показывает это -
Раздел покрытия инструментов chrome dev показывает, что 97,5% CSS в файле styles.chunk.css не используются, я думаю, это потому, что он содержит CSS почти всех страниц моего следующего приложения -
У меня два вопроса: 1. Что делает этот файл styles.chunk.css? 2. Как я могу уменьшить размер этого файла так, чтобы он содержал только те стили, которые необходимы для этой конкретной страницы?
Я пробовал использовать next-purgecss, но purgecss работает только в режиме разработки и не работает в производственном режиме, мой файл конфигурации записан ниже -
module.exports = withPlugins(
[
withLess(withPurgeCss({
purgeCssEnabled: ({ dev, isServer }) => (!dev && !isServer),
cssModules: true,
cssLoaderOptions: {
getLocalIdent: (loaderContext, localIdentName, localName, options) => {
const fileName = path.basename(loaderContext.resourcePath);
const shoudTransform = canBeTransformed(loaderContext.resourcePath);
if (!shoudTransform) {
return localName;
}
const name = fileName.replace(/\.[^/.]+$/, '');
return `${name}___${localName}`;
},
},
})),
// withBundleAnalyzer({}),
],
nextConfig,
);