使用webpack打包ts代码(2)

html-webpack-plugin 插件

先安装一个插件 html-webpack-plugin

这个插件可以帮助我们自动的创建html

js 复制代码
yarn add html-webpack-plugin --dev

然后在webpack.config.js中引入

js 复制代码
//webpack.config.js

//引入html插件
const HTMLWebpackPlugin = require("html-webpack-plugin");

module.exports = {
 
  //配置插件
  plugins: [new HTMLWebpackPlugin({
      title: "我是自定义的title",
    }),],
};

接着执行 yarn build,这时候在dist文件夹里,就有一个index.html文件了

我们也可以自定义html

js 复制代码
//webpack.config.js

module.exports = {
  //配置插件
  plugins: [new HTMLWebpackPlugin({
      template: "./src/index.html",
    })],
};

此时,打包后的html ,就是根据我们写的html生成的

webpack-dev-server 插件

先安装一个插件 webpack-dev-server

这个插件可以帮助我们在打包后,自动打开浏览器查看项目,并且实时更新

注意:这个插件需要node在18.x.x版本

js 复制代码
yarn add webpack-dev-server --dev

然后在package.json中配置一个start ,--mode development 会打开默认浏览器

js 复制代码
{

  "scripts": {
    "build": "webpack",
    "start":"webpack serve --open --mode development"
  },
  "devDependencies": {
    "html-webpack-plugin": "^5.6.0",
    "ts-loader": "^9.5.1",
    "typescript": "^5.4.2",
    "webpack": "^5.90.3",
    "webpack-cli": "^5.1.4",
    "webpack-dev-server": "^5.0.3"
  }
}

这时候执行 yarn start 就可以了

clean-webpack-plugin 插件

这个插件可以帮助我们在每次打包之前,先把输出目录删掉,创建最新的目录,避免一些不必要的文件还留在同一个目录下

js 复制代码
//注意,这个引入后是一个对象,要读属性或解构出来
const { CleanWebpackPlugin } = require("clean-webpack-plugin");

module.exports = {

  //配置插件
  plugins: [
    new CleanWebpackPlugin()
  ],
};

这样就可以打包了。

再配置一个

js 复制代码
//webpack.config.js
module.exports = {
  resolve: {
    extensions: [".ts"],
  },
};

在我们引入外部的ts模块时,此时打包会编译出错,而加上这个配置并加上 ".ts" 就可以解析ts文件成功了,这可以添加多个值

相关推荐
南村群童欺我老无力.21 分钟前
Flutter 框架跨平台鸿蒙开发 - 开发双人对战五子棋游戏
flutter·游戏·华为·typescript·harmonyos
AKA__老方丈38 分钟前
vue-cropper图片裁剪、旋转、缩放、实时预览
前端·vue.js
梦6502 小时前
Vue 单页面应用 (SPA) 与 多页面应用 (MPA) 对比
前端·javascript·vue.js
清铎2 小时前
大模型训练_week3_day15_Llama概念_《穷途末路》
前端·javascript·人工智能·深度学习·自然语言处理·easyui
岛泪2 小时前
把 el-cascader 的 options 平铺为一维数组(只要叶子节点)
前端·javascript·vue.js
Kiyra3 小时前
阅读 Netty 源码关于 NioEventLoop 和 Channel 初始化部分的思考
运维·服务器·前端
冰暮流星3 小时前
javascript的switch语句介绍
java·前端·javascript
做科研的周师兄3 小时前
【MATLAB 实战】|多波段栅格数据提取部分波段均值——批量处理(NoData 修正 + 地理信息保真)_后附完整代码
前端·算法·机器学习·matlab·均值算法·分类·数据挖掘
da_vinci_x3 小时前
图标量产:从“手绘地狱”到“风格克隆”?Style Reference 的工业化实战
前端·游戏·ui·prompt·aigc·设计师·游戏美术
利刃大大4 小时前
【ES6】变量与常量 && 模板字符串 && 对象 && 解构赋值 && 箭头函数 && 数组 && 扩展运算符 && Promise/Await/Async
开发语言·前端·javascript·es6