React
React 是一个用于构建用户界面的 JavaScript 库。Create React App 是学习 React 的一个舒适环境,也是在 React 中构建新的单页面应用程序的最佳方式。
本指南假设您使用 create-react-app 来构建单页面 React 应用程序。
craco
方法 1:使用 可以使用 craco 向 Create React App 应用添加自定义 PostCSS 插件(包括 PurgeCSS)。按照 craco 安装说明 进行操作,然后安装 PurgeCSS
PostCSS 插件并将其添加到 craco 配置中
npm i --save-dev @fullhuman/postcss-purgecss
// craco.config.js
const purgecss = require("@fullhuman/postcss-purgecss");
module.exports = {
style: {
postcss: {
plugins: [
purgecss({
content: ["./src/**/*.html", "./src/**/*.tsx", "./src/**/*.ts"],
}),
],
},
},
};
postbuild
中运行 PurgeCSS CLI
方法 2:在 在 package.json 中添加以下代码
"scripts": {
"postbuild": "purgecss --css build/static/css/*.css --content build/index.html build/static/js/*.js --output build/static/css"
},
eject
create-react-app
方法 3:您需要 eject 才能公开原始 create-react-app 提供的 webpack 配置
安装 PurgeCSS 的 webpack 插件
npm i --save-dev glob-all purgecss-webpack-plugin
现在,通过在其他导入项中添加以下代码来修改文件 config/webpack.prod.conf.js
// import PurgeCSS webpack plugin and glob-all
const { PurgecssPlugin } = require("purgecss-webpack-plugin");
const glob = require("glob-all");
...并且在插件列表中的 new ManifestPlugin(...)
正前方添加以下内容
// Remove unused css with PurgeCSS. See https://github.com/FullHuman/purgecss
// for more information about PurgeCSS.
// Specify the path of the html files and source files
new PurgecssPlugin({
paths: [paths.appHtml, ...glob.sync(`${paths.appSrc}/**/*`, { nodir: true })]
}),