zoukankan      html  css  js  c++  java
  • (七) webpack学习之——创建devServer开发环境

    在前面的学习中,每次修改一次源代码,都需要经过一次webpack打包才能生效。因可以配置devServer,从而可以使修改的代码能立刻生效。一个简单的devServer配置如下

     1 const path = require('path');
     2 const HtmlWebpackPlugin = require('html-webpack-plugin');
     3 const MiniCssExtractPlugin = require('mini-css-extract-plugin');;
     4 process.env.NODE_ENV = 'development';
     5 module.exports = {
     6   entry: './src/main.js',
     7   output: {
     8     filename: 'js/index.js',
     9     path: path.resolve(__dirname, 'build'),
    10   },
    11   module: {
    12     rules: [
    13       {
    14         test: /.css$/,
    15         use: [
    16           {
    17             loader: MiniCssExtractPlugin.loader,
    18             options: {
    19               publicPath: '../',
    20             },
    21 
    22           },
    23 
    24           'css-loader',
    25         ],
    26       },
    27       {
    28         test: /.scss$/,
    29         use: [
    30           {
    31             loader: MiniCssExtractPlugin.loader,
    32             options: {
    33               publicPath: '../',
    34             },
    35 
    36           },
    37           'css-loader',
    38           'sass-loader',
    39         ],
    40       },
    41       {
    42         test: /.(jpg|png|gif)$/,
    43         loader: 'url-loader',
    44         options: {
    45           limit: 8 * 1024,
    46           outputPath: 'images',
    47         },
    48 
    49       },
    50       {
    51         test: /.html$/,
    52         loader: 'html-loader',
    53 
    54       },
    55       {
    56         test: /.(eot|ttf|svg|woff)$/,
    57         loader: 'file-loader',
    58         options: {
    59           outputPath: 'font/',
    60         },
    61 
    62       },
    63     ],
    64   },
    65   plugins: [
    66     new CleanWebpackPlugin(),
    67     new HtmlWebpackPlugin({
    68       template: './src/index.html',
    69     }),
    70     new MiniCssExtractPlugin({
    71       filename: 'css/css.css',
    72 
    73     }),
    74     new OptimizeCssAssetsWebpackPlugin(),
    75   ],
    76   mode: 'development',
    77   devServer: {
    78     // 从哪里提供内容
    79     contentBase: path.resolve(__dirname, 'build'),
    80     // 启动gizp压缩
    81     compress: true,
    82     // 端口号
    83     port: 4000,
    84     // 自动打开浏览器
    85     open: true,
    86   }
    87 };

    在package.json里配置脚本

    "scripts": {
        "dev": "webpack-dev-server"
      },

    即可启动。

  • 相关阅读:
    while语句
    闭包
    文件操作
    Python基础九:高级特性
    Python基础八:函数
    Python基础六:字典和集合
    Python基础七:条件判断和循环结构
    Python基础五:列表和元组
    Python基础四:字符串及编码
    Python基础三:数据类型和变量
  • 原文地址:https://www.cnblogs.com/qiaoyun/p/13375138.html
Copyright © 2011-2022 走看看