11.23 ts中webpack的简单配置

entry

配置入口文件的位置

"entry":"./src/index.ts"

output

配置输出文件

"output": {
  path:path.resolve(__dirname,"dist"),
  filename: "bundle.js",
  environment: { //输出文件中没有箭头函数(主要是为了兼容ie浏览器)
      arrowFunction:false
  }
}

mode

设置项目的运行环境,一般有 development和production

mode: "development"

module

指定webapck打包时用到的模块

module: {
   //指定要加载的规则
   rules:[
    {
      "test": /\.ts$/,
      "use":[{ //配置babel
         loader: "babel-loader",
         options: {
            //设置预定义的环境
            presets:[
               [
                  //指定环境插件
                  "@babel/preset-env",
                  //配置信息
                  {
                     //要兼容的浏览器
                     targets: {
                         "chrome": "88",
                         "ie":"11"
                     },
                     //指定corejs的版本
                     "corejs":"3",
                     "useBuiltIns":"usage",//按需加载
                   }

               ]
            ]
         }
      },"ts-loader"],
      //要排除的文件
      exclude: /node_modules/
    }
   ]
}

plugins

需要用到的一些插件

import {CleanWebpackPlugin} from 'clean-webpack-plugin'
plugins:[
   new CleanWebpackPlugin(),//清空原来的dist中的文件,然后再生成新的文件(默认用新生成的文件覆盖之前的文件)
   new HTMLWebpackPlugin({  //自动生成html文件和引入相关资源
      template: './src/index.html'  //以该路径下得html
      文件为模板,生成html文件
   })  
]

resolve

用来设置引用模块(那些文件可以进行导入和导出)

resolve: {
  extensions: ['.ts','.js']
}

配置文件

const path = require('path');
const HTMLWebpackPlugin = require('html-webpack-plugin')
const {CleanWebpackPlugin} = require('clean-webpack-plugin');
// webpack中所有的配置信息都应该写在moudule.exports中
module.exports = {
    //指定入口文件
    entry:"./src/index.ts",
    // 指定打包文件所在的目录
    output: {
        // 指定打包文件的目录
        path: path.resolve(__dirname,'dist'),
        //打包后文件名
        filename:"bundle.js",
        environment: {  //不使用箭头函数(可以兼容ie浏览器)
            arrowFunction: false
        }
    },
    mode:"development",
    // 指定webpack打包时要用的模块
    module: {
        // 指定要加载的规则
        rules:[
           {
               //test指定的是规则生效的文件    
               "test":/\.ts$/,
               "use":[{ //配置babel
                  loader:"babel-loader",
                  options: {
                    // 设置预定义的环境
                    presets:[
                        [
                            // 指定环境插件
                            "@babel/preset-env",
                            // 配置信息
                            {
                                // 要兼容的浏览器 
                                targets:{
                                    "chrome":"88",
                                    "ie":"11"
                                },
                                // 指定corejs的版本
                                "corejs":"3",
                                "useBuiltIns":"usage", //"useBuiltIns":"usage" 按需加载
                            }
                        ]
                    ]  
                  }
               },"ts-loader"],
               //要排除的文件
               exclude:/node_modules/
               
           }
        ]
    },
    plugins:[
        new CleanWebpackPlugin(),  //清空dist原来的文件,然后生成新的文件(默认是生成新的文件然后进行覆盖)
        new HTMLWebpackPlugin({  //自动生成html文件和引入相关的资源
            // title:'ts中webpack的配置',
            template:'./src/index.html'
        }),  
    ],
    // 用来设置引用模块
    resolve: {
        extensions: ['.ts','.js']
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值