`

webpack - CSS提取

 
阅读更多

vue-style-loader启用 CSS 提取

// webpack.config.js
const ExtractTextPlugin = require('extract-text-webpack-plugin')
// CSS 提取应该只用于生产环境
// 这样我们在开发过程中仍然可以热重载
const isProduction = process.env.NODE_ENV === 'production'
module.exports = {
  // ...
  module: {
    rules: [
      {
        test: /\.vue$/,
        loader: 'vue-loader',
        options: {
          // enable CSS extraction
          extractCSS: isProduction
        }
      },
      // ...
    ]
  },
  plugins: isProduction
    // make sure to add the plugin!
    ? [new ExtractTextPlugin({ filename: 'common.[chunkhash].css' })]
    : []
}

 

如果想从 JavaScript 中导入 CSS,例如,import 'foo.css',你需要配置合适的 loader:

 

module.exports = {
  // ...
  module: {
    rules: [
      {
        test: /\.css$/,
        // 重要:使用 vue-style-loader 替代 style-loader
        use: isProduction
          ? ExtractTextPlugin.extract({
              use: 'css-loader',
              fallback: 'vue-style-loader'
            })
          : ['vue-style-loader', 'css-loader']
      }
    ]
  },
  // ...
}

  

分享到:
评论

相关推荐

    前端开源库-css-split-webpack-plugin

    而在CSS的处理方面,`css-split-webpack-plugin`是一个专门用于拆分CSS的Webpack插件,它主要针对那些不支持CSS模块化或对CSS预处理器(如PostCSS)不友好的老旧浏览器。 ### 1. Webpack 和 PostCSS **Webpack** ...

    前端开源库-webpack-handle-css-loader

    3. **CSS提取**:在生产环境中,为了提高页面的加载速度,通常会使用`MiniCssExtractPlugin`将CSS抽取到单独的文件中,而不是将其内联到JavaScript中。`webpack-handle-css-loader`可能包含了对这个插件的支持。 4....

    theme-css-extract-webpack-plugin:一个webpack 插件,用于提取对应的`multipleScopeVars`主题 css 文件

    @zougt/theme-css-extract-webpack-plugin这个 webpack 插件主要用于使用了和的 webpack 工程将对应的multipleScopeVars主题 css 提取出独立的 css 文件提取主题 css 文件的操作只在 webpackConfig.mode:"production...

    前端开源库-jsdoc-webpack-plugin

    **jsdoc-webpack-plugin** 是Webpack生态中的一个插件,它的主要作用是在Webpack的构建过程中自动提取源代码中的JSDoc注释,并生成相应的API文档。这样,开发者无需在构建完成后手动运行JSDoc命令,节省了时间,提高...

    webpack-1-demo

    5. **Plugins(插件)**:Webpack 插件可以执行更复杂的任务,比如自动优化、提取 CSS 到单独文件、压缩代码等。在 "webpack-1-demo" 中,可能会使用到 MiniCssExtractPlugin 来提取 CSS 到外部文件。 6. **配置...

    extract-css-chunks-webpack-plugin:从大块中提取CSS到多个样式表+ HMR

    如果您喜欢我们的工作,请查看我们基于Redux的路由器或其后继者, Extract-css-chunks-webpack-plugin :bottle_with_popping_cork: :bottle_with_popping_cork: :bottle_with_popping_cork: 我们非常高兴宣布Webpack...

    WEBPACK-SIMPLE.zip

    在深入理解Webpack的工作原理时,我们需要知道它基于模块系统,通过"加载器(loaders)"将非JavaScript文件转换为JavaScript模块,然后通过"插件(plugins)"进行更复杂的处理,如优化、提取CSS等。Webpack执行的过程...

    webpack-many-page

    随着项目的复杂性增加,我们可能需要进一步优化Webpack配置,比如代码分割(code splitting),按需加载(lazy loading),热模块替换(Hot Module Replacement,HMR),以及利用`MiniCssExtractPlugin`提取CSS等。...

    webpack-ExtractTextPlugin

    通过以上配置,Webpack 将会把所有匹配到的 `.css` 文件内容提取到一个名为 `styles.css` 的单独文件中。这样,你就可以在项目中引用这个 CSS 文件,实现样式文件的独立打包。 在实际开发中,可能还需要考虑对 CSS ...

    前端开源库-webpack-react-webp

    - **Plugins**:可能包括`HtmlWebpackPlugin`自动生成HTML模板,`MiniCssExtractPlugin`提取CSS到单独文件,以及其他优化性能的插件。 5. **使用流程**:开发者在编写React应用时,可以直接引入WebP格式的图片。...

    webpack-critical-css-inliner:一个快速的webpack插件,用于内嵌关键的(超前的)css

    提取关键(折叠)CSS。 快速内联该CSS。 使其余样式延迟加载。 处理Google字体。 优化现有样式。 安装 npm install --save-dev webpack-critical-css-inliner // or yarn add --dev webpack-critical-css-...

    前端开源库-webpack-wrapper-common

    - **插件**:预装了一些常用的Webpack插件,如HtmlWebpackPlugin用于生成HTML,MiniCssExtractPlugin用于提取CSS为单独文件。 - **代码分割**:自动处理代码分割,提高首屏加载速度。 - **热模块替换**(HMR):支持...

    html-critical-webpack-plugin:一个将提取关键CSS的webpack插件。 现在支持Webpack v4

    该插件将提取关键CSS并在所有文件发出后运行,因此您可以在Mini CSS Extract插件和HTML Webpack插件之后使用它。 查看或阅读博客文章以获取更多用法信息。 安装 npm i --save-dev html-critical-webpack-plugin ...

    purgecss-webpack-plugin:用于Webpack的Purgecss插件

    例如,`MiniCssExtractPlugin`可以将CSS提取为单独的文件,而`purgecss-webpack-plugin`则负责清理未使用的CSS,两者结合可以实现高效的CSS优化。 **4. 注意事项** - 确保在生产环境中启用Purgecss,因为它可能...

    前端开源库-webpack-browser-plugin

    Webpack-Browser-Plugin可以与其他Webpack插件一起使用,如HtmlWebpackPlugin用于生成HTML文件,MiniCssExtractPlugin用于提取CSS到单独的文件,以及各种优化和性能提升插件。它们共同构成了一个强大的前端开发环境...

    webpack-simple 模板

    Webpack-Simple 模板会配置 Vue Loader 来解析这些文件,提取出模板、脚本和样式部分分别处理。 5. **静态资源处理**:Webpack 还可以处理项目中的图片、字体等静态资源。通过 URL Loader 或 File Loader,这些资源...

    webpack-demo-开发

    Webpack 是一个现代JavaScript应用程序的模块打包工具,它将各种资源(如JavaScript、CSS、图片等)视为模块,并将它们组合成一个或多个可部署的静态资源。在"webpack-demo-开发"这个项目中,我们很显然会看到一个...

    webpack-npm-demo.zip

    - **Plugin**:这些是在Webpack构建过程中的扩展点,可以执行更复杂的任务,比如提取CSS到单独文件、优化图片、生成HTML模板等。 在“webpack-npm-demo”中,我们可能会看到如何设置Loader来处理不同类型的文件,...

    webpack-MultiplePage, 基于webpack的前端工程化方案(自动入口配置及后端模板).zip

    5. **插件应用**:除了自动入口配置插件,还可以使用`MiniCssExtractPlugin`提取CSS到单独文件,`clean-webpack-plugin`清理构建目录,`html-webpack-plugin`生成HTML模板等。 6. **开发环境与生产环境的差异化配置...

    react-webpack-demo

    此外,还可能涉及到优化配置,如分块(chunking)以实现按需加载,或者使用MiniCssExtractPlugin提取CSS为单独文件等。 总之,"react-webpack-demo" 是一个实践性的教学资源,它涵盖了React与Webpack集成的基本知识...

Global site tag (gtag.js) - Google Analytics