TypeScript - TypeScript 结合打包工具

发布时间:2026/9/24 6:53:49
TypeScript - TypeScript 结合打包工具 一、webpack1、引入通常实际开发中我们都需要使用构建工具对代码进行打包TS 同样也可以结合构建工具一起使用2、使用步骤初始化项目创建 package.json 文件npm init -y依赖配置npm i -D webpack webpack-cli webpack-dev-server typescript ts-loader html-webpack-plugin clean-webpack-plugin依赖说明webpack构建工具 webpackwebpack-cliwebpack 的命令行工具webpack-dev-serverwebpack 的开发服务器typescriptTS 编译器ts-loaderTSTS 加载器用于在 webpack 中编译 TS 文件html-webpack-pluginwebpack 中的 HTML 插件用来自动创建 HTML 文件clean-webpack-pluginwebpack 中的清除插件每次项目构建都会先清除目录创建并配置 webpack.config.js 配置文件constpathrequire(path);constHtmlWebpackPluginrequire(html-webpack-plugin);// 引入 HTML 插件const{CleanWebpackPlugin}require(clean-webpack-plugin);// 引入 clean 插件module.exports{// webpack 中的所有的配置信息都写在 module.exports 中entry:./src/index.ts,// 定义入口文件output:{path:path.resolve(__dirname,dist),// 定义打包后文件的所在目录filename:bundle.js// 定义打包后的文件名称},module:{// 定义 webpack 打包时要使用模块rules:[// 定义加载规则{test:/\.ts$/,// 定义规则生效的文件use:[// 定义 loaderts-loader],exclude:/node_modules/,// 定义排除的文件},],},plugins:[// 定义 webpack 插件newCleanWebpackPlugin(),newHtmlWebpackPlugin({// title: Hello TypeScript,template:./src/index.html}),],resolve:{// 定义引用模块extensions:[.ts,.js]},mode:development};创建并配置 tsconfig.json 配置文件{compilerOptions:{target:ES2015,module:ES2015,strict:true}}在 package.json 配置文件中添加如下配置{scripts:{test:echo \Error: no test specified\ exit 1,build:webpack,start:webpack serve --open}}命令行执行对代码进行编译或启动开发服务器npm run buildnpm run start二、Babel1、引入开发中经常需要结合 Babel 来对代码进行转换以使其可以兼容更多的浏览器在 webpack 的基础上需要将 Babel 结合到项目中2、使用步骤依赖配置npm i -D babel/core babel/preset-env babel-loader core-js依赖说明babel/coreBabel 的核心工具babel/preset-envBabel 的预定义环境babel-loaderBabel 在 webpack 中的加载器core-jscore-js 可以使老版本的浏览器支持新版 ES 语法配置 webpack.config.js 配置文件constpathrequire(path);constHtmlWebpackPluginrequire(html-webpack-plugin);// 引入 HTML 插件const{CleanWebpackPlugin}require(clean-webpack-plugin);// 引入 clean 插件module.exports{// webpack 中的所有的配置信息都写在 module.exports 中entry:./src/index.ts,// 定义入口文件output:{path:path.resolve(__dirname,dist),// 定义打包后文件的所在目录filename:bundle.js,// 定义打包后的文件名称environment:{arrowFunction:false,// 不使用箭头函数},},module:{// 定义 webpack 打包时要使用模块rules:[// 定义加载规则{test:/\.ts$/,// 定义规则生效的文件use:[// 定义 loader{// 配置 Babelloader:babel-loader,// 定义加载器options:{presets:[// 定义预定义环境[babel/preset-env,// 指定环境的插件{targets:{// 定义要兼容的目标浏览器chrome:58,ie:11},corejs:3,// 定义 core-js 的版本useBuiltIns:usage// 定义使用 core-js 的方式usage 表示按需加载}]]}},ts-loader],exclude:/node_modules/,// 定义排除的文件},],},plugins:[// 定义 webpack 插件newCleanWebpackPlugin(),newHtmlWebpackPlugin({// title: Hello TypeScript,template:./src/index.html}),],resolve:{// 定义引用模块extensions:[.ts,.js]},mode:development};

关于本文作者

来自尧图内容编辑团队

尧图内容编辑团队 内容团队

尧图内容编辑团队

本文由尧图网络内容编辑团队执笔。团队由资深项目经理、前端工程师与设计师组成,所有内容均来自亲手交付的真实项目,先讲清问题、再给出可落地的解法。尧图深耕北京网站建设十年,服务过京华建材集团、智造科技等各行业客户,把一线经验沉淀为可复用的行业观察。

  • 十年建站经验,覆盖建材、制造、服务、文创等
  • 项目经理把关选题与事实准确性
  • 工程师与设计师联合撰写专业细节
  • 统一编辑规范,保证文风与排版一致
  • 每月复盘转化数据,迭代选题方向

延伸阅读

相关资讯与近期热门内容

深度阅读推荐

建站决策前值得细读的三篇

网站改版的5个关键决策
2024-08-12

网站改版的5个关键决策

什么时候该改版、改到什么程度、如何避免流量掉光,京华建材集团改版复盘给出答案。

获取专属建站方案

看完文章,把您的行业与预算告诉我们,免费获取一份量身定制的官网建设方案与报价。

立即免费咨询