前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >webpack 配置

webpack 配置

作者头像
逃跑计划
发布2022-08-05 08:01:35
3030
发布2022-08-05 08:01:35
举报
文章被收录于专栏:我的前端体系我的前端体系

1.webpack 配置

webpack 常规配置如下(entry、output、loader、plugin、mode)

代码语言:javascript
复制
const path = require('path')
const HtmlWebpaackPlugin = require('html-webpack-plugin') // 初始化 HTML 模板
const { CleanWebpackPlugin } = require('clean-webpack-plugin') // 每次打包删除旧文件

module.exports = {
  entry: './src/main.ts',
  output: {
    path: path.resolve(__dirname, 'dist'),
    filename: 'main.js'
  },
  // 开发模式服务器
  devServer: {
    static: {
      directory: path.join(__dirname, 'dist')
    },
    open: true
  },
  // 配置默认后缀
  resolve: {
    extensions: ['.ts', '.js', '.json', '.svg']
  },
  module: {
    // css 与 ts 的loader
    rules: [
      {
        test: /\.css$/,
        use: ['style-loader', 'css-loader']
      },
      {
        test: /\.ts$/,
        use: ['ts-loader'],
        exclude: /node_modules/
      }
    ]
  },
  plugins: [
    // 相关插件
    new HtmlWebpaackPlugin({
      template: './src/index.html'
    }),
    new CleanWebpackPlugin()
  ],
  // 开发模式
  mode: 'development'
}

SourceMap 是一种映射关系,当项目运行后,如果出现错误,我们可以利用 SourceMap 反向定位到源码位置;

代码语言:javascript
复制
config
  // 开发环境 sourcemap 不包含列信息
  .when(process.env.NODE_ENV === 'development', (config) => config.devtool('cheap-source-map'))
  // 预览环境构建 vue-loader 添加 filename
  .when(process.env.VUE_APP_SCOURCE_LINK === 'TRUE', (config) =>
    VueFilenameInjector(config, {
      propName: process.env.VUE_APP_SOURCE_VIEWER_PROP_NAME
    })
  )
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2022-08-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.webpack 配置
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档