webpack最基础的配置

以下是一个基本的webpack配置示例,它包括了入口文件、输出配置以及模式设置(开发模式或生产模式)。

javascript 复制代码
const path = require('path');
 
module.exports = (env, argv) => {
  // 根据传入的参数确定是开发模式还是生产模式
  const isProduction = argv.mode === 'production';
 
  return {
    // 项目入口文件
    entry: './src/index.js',
    // 输出配置
    output: {
      // 输出文件名
      filename: 'bundle.js',
      // 输出路径
      path: path.resolve(__dirname, 'dist'),
      // 在生产模式下添加代码压缩和优化
      ...(isProduction && {
        optimization: {
          minimize: true,
          // 这里可以添加更多的优化配置
        },
      }),
    },
    // 在开发模式下添加 source maps 帮助调试
    devtool: isProduction ? false : 'inline-source-map',
    // 模块配置
    module: {
      rules: [
        {
          // 处理 JavaScript 文件
          test: /\.js$/,
          exclude: /node_modules/,
          loader: 'babel-loader',
        },
        {
          // 处理 CSS 文件
          test: /\.css$/,
          use: ['style-loader', 'css-loader'],
        },
        // 这里可以添加更多的规则来处理其他类型的文件
      ],
    },
    // 插件配置
    plugins: [
      // 这里可以添加插件
    ],
    // 开发服务器配置
    devServer: {
      contentBase: './dist',
      open: true,
      port: 3000,
    },
  };
};

这个配置文件提供了基本的入口、输出以及模块加载配置。它使用了环境变量来判断当前是开发模式还是生产模式,并根据模式配置不同的输出和优化。同时,它包括了对.js.css文件的基本处理,以及开发服务器的配置。这个配置是一个基础,你可以根据自己的项目需求进行扩展和定制。

相关推荐
apcipot_rain4 小时前
【应用密码学】实验五 公钥密码2——ECC
前端·数据库·python
ShallowLin4 小时前
vue3学习——组合式 API:生命周期钩子
前端·javascript·vue.js
Nejosi_念旧5 小时前
Vue API 、element-plus自动导入插件
前端·javascript·vue.js
互联网搬砖老肖5 小时前
Web 架构之攻击应急方案
前端·架构
pixle05 小时前
Vue3 Echarts 3D饼图(3D环形图)实现讲解附带源码
前端·3d·echarts
麻芝汤圆6 小时前
MapReduce 入门实战:WordCount 程序
大数据·前端·javascript·ajax·spark·mapreduce
juruiyuan1118 小时前
FFmpeg3.4 libavcodec协议框架增加新的decode协议
前端
Vone_668 小时前
node.js 邮箱验证服务器搭建
运维·服务器·node.js
Peter 谭8 小时前
React Hooks 实现原理深度解析:从基础到源码级理解
前端·javascript·react.js·前端框架·ecmascript
程序员拂雨9 小时前
HTTP和HTTPS模块
http·https·node.js