Base公共 / Dev开发 / Pro生产

  1. 开发环境 —— src
    程序猿们专门用于开发的服务器,配置可以比较随意, 为了开发调试方便,一般打开全部错误报告
  2. 生产环境 —— 打包上线
    正式提供对外服务的
  3. 文件夹路径
  4. 在这里插入图片描述
  5. webpack.dev.js
const path = require("path");  
const ExtractTextWebpackPlugin = require("extract-text-webpack-plugin");
const CleanWebpackPlugin = require("clean-webpack-plugin");
const HtmlWebpackPlugin = require("html-webpack-plugin");
const webpack = require("webpack");

module.exports = {
    entry: path.join(__dirname, "./src/index.js"),   	//base
    output: {                                        	//pro
        path: path.join(__dirname, "build"),
        filename: "[hash]-[name].js"
    },
    module: {
        rules: [{
                test: /\.(js|jsx)$/,                 		//base
                loader: "babel-loader",
                options: {
                    presets: ["@babel/preset-env"],
                }
            }, {
                test: /\.css$/,                       		//base
                use: ["style-loader", "css-loader"] 
            }, {
                test: /\.scss$/,    						//dev
                use: ["style-loader","css-loader", "sass-loader"]
                use: extracttextwebpackplugin.extract({     //pro
                    fallback: "style-loader",	
                    use: ["css-loader", "sass-loader"]
                })
            }, {
                test: /\.(jpg|gif|jpeg|png)$/,          	//base
                loader: "url-loader",
                options: {
                    limit: 4000,
                    name: "./img/[name].[ext]"
                }
            }, {
                test: /\.(eot|svg|ttf|woff)$/,       		//base
                loader: "file-loader",
                options: {
                    name: "./font/[name].[ext]"
                }
            }, {
                test: /\.html$/,      						 //base
                loader: "html-loader",
            }

        ]
    },
    plugins: [
        new extracttextwebpackplugin("styles.css"),     	//pro
        new CleanWebpackPlugin(),                   		//base
        new HtmlWebpackPlugin({ 				       		//base
            template: "index.html", 
            filename: "app.html",
            inject: true,
            // title: "1701"
        }),
        new webpack.HotModuleReplacementPlugin(),   		//dev
    ],
    devServer: {   											//dev
        port: 8689,
        open: true,
        hot: true,
        before(app) {
            app.get("/api/list", (req, res, next) => {
                res.json()
            })
        }
    }
}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值