首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在汇总中压缩css文件

在汇总中压缩css文件
EN

Stack Overflow用户
提问于 2020-09-30 10:28:01
回答 2查看 358关注 0票数 2

我正在尝试将我的js和scss文件打包到汇总中,以便生产。Rollup获取我的所有文件并将它们输出到一个build中,结果如下:

代码语言:javascript
复制
build
  css
    bundle.css
  js
    bundle.js
    bundle.js.gz

如您所见,我正在使用gzipPlugin作为js文件。我也想使用gzipPlugin来处理我的css,但我不知道如何做到这一点。

我目前的设置如下:

代码语言:javascript
复制
import babel from "rollup-plugin-babel";
import { terser } from "rollup-plugin-terser";
import multi from "@rollup/plugin-multi-entry";
import gzipPlugin from "rollup-plugin-gzip"
import scss from "rollup-plugin-scss"
import del from "rollup-plugin-delete"

export default [{
    input: "src/**/*.logic.js",
    output: {
        file: "build/assets/js/main.min.js",
        format: "umd",
        name: "Logic"
    },
    plugins: [
        del({ targets: "build" }),
        gzipPlugin(),
        terser({
            output: {
                wrap_iife: false
            }
        }),
        multi({
            exports: true
        }),
        babel({
            exclude: "node_modules/**"
        })
    ]
}, {
    input: "src/all.scss",
    plugins: [
        scss({
            output: "build/assets/css/styles.min.css",
            outputStyle: "compressed"
        }),
    ]
}
];

我的问题是:如何使输出的css文件被压缩?

我想我错过了一些很简单的东西,我只是不知道如何让gzipPlugin在css文件上工作.提前谢谢你的建议。

EN

回答 2

Stack Overflow用户

发布于 2021-04-27 01:08:05

我认为您只需要在您的CSS生成的插件会话中添加gzipPlugin。

如下所示:

代码语言:javascript
复制
input: "src/all.scss",
plugins: [
    scss({
        output: "build/assets/css/styles.min.css",
        outputStyle: "compressed"
    }),
    gzipPlugin()
]
票数 0
EN

Stack Overflow用户

发布于 2021-06-02 18:58:56

我能够通过指定additionalFiles选项来实现这一点:

代码语言:javascript
复制
// rollup.config.js
...
import gzipPlugin from "rollup-plugin-gzip";
import css from "rollup-plugin-css-only";

export default {
  input: "src/main.js",
  output: {
    ...
    file: "public/build/bundle.js",
  },
  plugins: [
    gzipPlugin({
      additionalFiles: ["./public/build/bundle.css"],
    }),
    css({ output: "bundle.css" }),
    ...
  ]
}

我遇到的一个小怪癖是,构建必须运行两次。第一次不使用gzip来生成bundle.css,第二次在上一次运行时对bundle.css进行gzip。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64135625

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档