当前位置: 首页 > news >正文

webpack之ts打包

tsconfig.json配置

 // 是否对js文件进行编译,默认false"allowJs": true,// 是否检查js代码是否符合语法规范,默认false(引入的外部文件有可能语法有问题)"checkJs": true,

allowJs和checkJs基本是同时出现,因为有了allowJs 这个检查,相对应的就要检查语法规范;

checkJs基本是false,因为在项目使用中,可能会引用外部文件,不能确定引入的文件的语法是否符合规范;

webpack配置

项目初始化

npm -init -y

生成package.json

下载构建工具

下载开发依赖 webpack

配置webpack相关

创建webpack.config.js文件

// 引入一个包
const path = require('path')// webpack中所有配置信息都应该写在module.exports中
module.exports = {entry: "./src/index.ts", // 入口文件output:{// 指定打包文件的目录path: path.resolve(__dirname, 'dist'), // 出口路径filename: "bundle.js" // 出口文件名},// 指定webpack打包时使用模块module:{rules:[{// 指定的规则生效的文件test: /\.ts$/, // 匹配所有.css结尾的文件use:['ts-loader'], // 应用的loaderexclude: /node_modules/ // 排除node_modules中的文件}]},
}

创建tsconfig.json文件

tsx --init

配置package.json打包命令行

"scripts": {"test": "echo \"Error: no test specified\" && exit 1","build": "webpack"},

html-webpack-plugin

html生成

下载依赖

npm i -D html-webpack-plugin

webpack.config.js中配置

const HTMLWebPackPlugin = require('html-webpack-plugin')plugins: [// ��件:在 webpack 构建流程中的特定时机注入额外功能new HTMLWebPackPlugin({template:"./src/index.html", // ���模板路径})],

 webpack-dev-server

安装webpack-dev-server依赖,监听项目改动,实时更新

npm i -D webpack-dev-server

修改package.json

~~ "serve": "webpack server --open chrome.exe"~~

 "scripts": {"test": "echo \"Error: no test specified\" && exit 1","build": "webpack","serve": "webpack server --open --mode production"},

clean-webpack-plugin

每次打包时,先清空dist文件,再创建

// 引入clean-webpack-plugin来清除dist文件夹中的所有内容
const {CleanWebpackPlugin} = require('clean-webpack-plugin')
plugins: [new CleanWebpackPlugin(), // ���清除dist文件夹中的所有内容// ��件:在 webpack 构建流程中的特定时机注入额外功能new HTMLWebPackPlugin({title:"网页标题", // ���模板的标题template:"./src/index.html", // ���模板路径})],

引入模块

resolve:{extensions: ['.ts', '.js'] // ��� webpack 如何��找模块}

 babel相关依赖

npm i -D @babel/core @babel/preset-env babel-loader core-js
  • @babel/preset-env:写的代码,兼容不同浏览器
  • babel-loader 结合
  • core-js

兼容ie浏览器

打包的代码包含箭头函数处理

environment:{// 定义在 webpack 构建期间可以修改的环境变量// NODE_ENV: process.env.NODE_ENVarrowFunction: false, // 关闭��头函数的返回值��号}

打包

npm run build

简单记个笔记

http://www.lryc.cn/news/396751.html

相关文章:

  • MATLAB数据统计描述和分析
  • 设计分享—国外后台界面设计赏析
  • 最小生成树(算法篇)
  • 教师管理小程序的设计
  • Selenium 等待
  • 安装easy-handeye
  • 【面试题】MySQL 索引(第二篇)
  • 4. 小迪安全v2023笔记 javaEE应用
  • anaconda修改安装的默认环境
  • MySQL 9.0 正式发行Innovation创新版已支持向量
  • 基于Java+SpringMvc+Vue技术的智慧校园系统设计与实现
  • 【蔬菜网元宇宙】—— 探索农业的未来之旅
  • 淘宝商品历史价格查询(免费)
  • 14-47 剑和诗人21 - 2024年如何打造AI创业公司
  • WPF界面设计-更改按钮样式 自定义字体图标
  • 开源项目的机遇与挑战
  • Linux实现CPU物理隔离
  • springer latex模板参考文献不显示
  • 使用Vue3、Pinia和Vite5打造高度还原的抖音仿制项目
  • stm32基本定时器
  • 网络安全基础-1
  • SSH远程访问及控制
  • Qt 绘图详解
  • Python 爬虫与 Java 爬虫:相似之处、不同之处和选项
  • 视频监控汇聚平台LntonCVS视频监控系统解决智慧产业园的安全应用方案
  • MAVLink代码生成-C#
  • 二四、3d人脸构建
  • 鸿蒙开发:Universal Keystore Kit(密钥管理服务)【加解密(C/C++)】
  • Python的入门知识(上)
  • 2024春秋杯网络安全联赛夏季赛-PWN