webpack + less

使用less須要安裝 'style-loader','css-loader','less-loader' 三個loader。css

安裝以後在webpack.config.js配置html

const path = require('path');
const HtmlWebpackPlugin = require('html-webpack-plugin');
const CleanWebpackPlugin = require('clean-webpack-plugin');
module.exports = {
  entry: {//入口文件
    app: './src/index.js'
  },
  devtool: 'inline-source-map',
  devServer: {
    contentBase: './dist'
  },
  plugins:[
    new CleanWebpackPlugin(['dist']),
    new HtmlWebpackPlugin({
       title: 'Output Management'
    }),
  ],
  output: {//輸出文件
    filename: '[name].bundle.js',
    path: path.resolve(__dirname, 'dist'),
    publicPath: '/'
  },
  module: {
    rules: [
      {
         test: /\.(png|svg|jpg|gif)$/,
         use: [
           'file-loader'
         ]
      },
      {
         test: /\.(less|css)$/,
         use: [
           'style-loader',
           'css-loader',
           'less-loader'
         ]
      },
    ]
  }
};
View Code

執行命令,這個時候會發現樣式寫在頁面<head>標籤的裏面。webpack

 

若是樣式少,這樣看着還能夠,可是多的話,仍是外鏈的方式比較好,因此咱們用 extract-text-webpack-plugin 來進行處理,先安裝,接着繼續修改配置。web

const path = require('path');
const HtmlWebpackPlugin = require('html-webpack-plugin');
const CleanWebpackPlugin = require('clean-webpack-plugin');
const ExtractTextPlugin = require('extract-text-webpack-plugin');
module.exports = {
  entry: {//入口文件
    app: './src/index.js'
  },
  devtool: 'inline-source-map',
  devServer: {
    contentBase: './dist'
  },
  plugins:[
    new CleanWebpackPlugin(['dist']),
    new HtmlWebpackPlugin({
       title: 'Output Management'
    }),
    new ExtractTextPlugin({
      filename: 'index.css',
      disable: false,
      allChunks: true,
    }),
  ],
  output: {//輸出文件
    filename: '[name].bundle.js',
    path: path.resolve(__dirname, 'dist'),
    publicPath: '/'
  },
  module: {
    rules: [
      {
         test: /\.(png|svg|jpg|gif)$/,
         use: [
           'file-loader'
         ]
      },
      {
         test: /\.(less|css)$/,
         use: ExtractTextPlugin.extract({
          use:[ 'css-loader','less-loader'],
          fallback: 'style-loader',
        }),
      },
    ]
  }
};
View Code

這時候執行命令結束以後,就會達到咱們想要的結果。app

相關文章
相關標籤/搜索