首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Svelte:如何使用rollup在特定文件中提取CSS?

Svelte:如何使用rollup在特定文件中提取CSS?
EN

Stack Overflow用户
提问于 2021-02-10 17:46:29
回答 1查看 952关注 0票数 0

我想从svelte组件的<style>块中提取样式,并在特定文件中包含css文件(例如import 'datatables.net-bs4/css)。

我知道这是rollup-plugin-postcss的工作,但我无法做到让它工作。

代码语言:javascript
复制
import svelte from 'rollup-plugin-svelte';
import { terser } from 'rollup-plugin-terser';
import scss from 'rollup-plugin-scss'
import livereload from 'rollup-plugin-livereload'
import resolve from 'rollup-plugin-node-resolve';
import commonjs from 'rollup-plugin-commonjs';
import copy from 'rollup-plugin-copy'
import autoprefixer from 'autoprefixer'
import postcss from 'rollup-plugin-postcss'

const production = !process.env.ROLLUP_WATCH;

export default [{
      input: 'front/svelte/main.js',
      output: {
          sourcemap: true,
          format: 'iife',
          name: 'app',
          file: 'web/static/build/bundle.js'
     },
      plugins: [
        resolve({
            jsnext: true,
            main: true,
            browser: true,
        }),
        commonjs(),
        svelte({
            dev: !production,
            include: ['front/svelte/**', 'node_modules/svelte/**'],
        }),
        postcss({
            extract: true,
            minimize: true,
        }),
        !production && livereload('web'),
        production && terser()
      ],
    }
  }
];

我知道extract选项会生成一个web/static/build/bundle.css,但什么也不会发生。

我怎么才能解决这个问题呢?

EN

回答 1

Stack Overflow用户

发布于 2021-02-11 17:04:42

默认情况下,svelte template使用rollup-plugin-css-only插件来做你想做的事情。

代码语言:javascript
复制
// we'll extract any component CSS out into
// a separate file - better for performance
css({ output: 'bundle.css' }),

如果可能,可能值得一试,以确保基本设置正常工作,必要时进行调试,然后看看是否可以切换回rollup-plugin-postcss

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

https://stackoverflow.com/questions/66134450

复制
相关文章

相似问题

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