美文网首页
webpack 制作一个模块热替换的web-server

webpack 制作一个模块热替换的web-server

作者: ZhiPengTu | 来源:发表于2018-08-14 22:35 被阅读0次

    webpack 基于node,开发需要开发的效率。‘热更替’显然是一种非常高效的方式,更加适合前端提升工作的效率。

    webpack 中文文档 | webpack 中文网:https://www.webpackjs.com/guides/
    目录结构:

    image.png

    package.json就像它的名字一样 用作 依赖管理

    {
      "name": "webproject",
      "version": "1.0.0",
      "description": "",
      "private": true,
      "scripts": {
        "test": "echo \"Error: no test specified\" && exit 1",
        "build": "webpack",
        "start": "webpack-dev-server --open",
        "watch": "webpack --watch"
      },
      "keywords": [],
      "author": "",
      "license": "ISC",
      "devDependencies": {
        "clean-webpack-plugin": "^0.1.19",
        "css-loader": "^1.0.0",
        "csv-loader": "^3.0.2",
        "file-loader": "^1.1.11",
        "html-webpack-plugin": "^3.2.0",
        "style-loader": "^0.22.1",
        "webpack": "^4.16.5",
        "webpack-cli": "^3.1.0",
        "webpack-dev-server": "^3.1.5",
        "xml-loader": "^1.2.1"
      },
      "dependencies": {
        "lodash": "^4.17.10"
      }
    }
    

    webpack.config.js webpack的配置文件,在文件里面可以设置文件的编译方式,文件入口,文件出口。(即文件的来源,文件的输出)

    const path = require('path');
    const HtmlWebpackPlugin = require('html-webpack-plugin');
    const CleanWebpackPlugin = require('clean-webpack-plugin');
    
    module.exports = {
        entry: {
            app:'./src/index.js',
            print:'./src/print.js'
        },
        devServer: {
            contentBase: './dist'
        },
        plugins: [
            new CleanWebpackPlugin(['dist']),
            new HtmlWebpackPlugin({
                title: 'Output Management'
            })
        ],
        output: {
            filename: '[name].bundle.js',
            path: path.resolve(__dirname, 'dist')
        },
        module: {
            rules: [
                {
                    test: /\.css$/,
                    use: [
                        'style-loader',
                        'css-loader'
                    ]
                },
                {
                    test: /\.(png|svg|jpg|gif)$/,
                    use: [
                        'file-loader'
                    ]
                },
                {
                    test: /\.(woff|woff2|eot|ttf|otf)$/,
                    use: [
                        'file-loader'
                    ]
                },
                {
                    test: /\.(csv|tsv)$/,
                    use: [
                   'csv-loader'
                    ]
                 },
                 {
                     test: /\.xml$/,
                     use: [
                     'xml-loader'
                    ]
                 }
            ]
        }
    };
    

    相关文章

      网友评论

          本文标题:webpack 制作一个模块热替换的web-server

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