美文网首页
从零开始学webpack的笔记 4

从零开始学webpack的笔记 4

作者: Sasoli | 来源:发表于2020-05-06 09:13 被阅读0次

    自行学习整理,边学边记,没了解过webpack的同学可以一点点看完,或许会有些帮助,不成熟的地方欢迎指正,转载请注明出处!!!

    上篇文章我们已经把css进行了打包,但把所有css放进html不是个好办法,所以这篇我们把css提取成单独的文件

    1,安装mini-css-extract-plugin插件

    大家可能会看到有些教程使用extract-text-webpack-plugin这个插件的,这个是旧版本webpack使用的,在新版使用可能会遇到兼容性问题,到了webpack4+,请使用mini-css-extract-plugin
    先进行安装

    npm i mini-css-extract-plugin -D
    
    2,引入并使用,先看代码
    const path = require('path');
    const HtmlWebpackPlugin = require('html-webpack-plugin');
    const MiniCssExtractPlugin = require('mini-css-extract-plugin');
    const { CleanWebpackPlugin } = require('clean-webpack-plugin');
    
    module.exports = () => {
      return {
        // entry: path.resolve(__dirname, 'src/index.js'),
        // entry: path.resolve(__dirname, 'src', 'index.js'),
        entry: {
          index: [path.resolve(__dirname, 'src/index.js')]
        },
        output: {
          filename: 'js/[name].js',
          path: path.resolve(__dirname, 'build'),
        },
        plugins: [
          new CleanWebpackPlugin(),
          new HtmlWebpackPlugin(),
          new MiniCssExtractPlugin({
            filename: 'css/[name].css',
          }),
        ],
        module: {
          rules: [
            {
              test: /\.css$/,
              use: [
                // {
                //   loader: 'style-loader'
                // },
                // 'style-loader',
                MiniCssExtractPlugin.loader,
                // {
                //   loader: 'css-loader',
                //   options: {
                //     modules: true
                //   }
                // },
                'css-loader',
              ]
            }
          ]
        }
      }
    }
    

    这里我们取消了style-loader,转为使用MiniCssExtractPlugin.loader
    并在plugins中启用插件并进行一些自定义配置,比如filename文件名
    这样我们就基本使用了css文件单独提取的功能

    相关文章

      网友评论

          本文标题:从零开始学webpack的笔记 4

          本文链接:https://www.haomeiwen.com/subject/kqkightx.html