经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » JS/JS库/框架 » webpack » 查看文章
webpack搭建脚手架打包TypeScript代码
来源:jb51  时间:2021/9/22 8:36:41  对本文有异议

创建文件夹

目录结构: dabaots

初始化 npm init -y生成package.json文件

目录结构:
dabaots
dabaots / package.json

然后在开发环境中安装以下几个工具

  1. npm i -D

webpack··························(打包代码的核心工具
webpack-cli·····················(webpack的命令行工具)
typescript ·······················(写ts所需的核心包)
ts-loader ·························(通过ts-loader可以对webpack和ts进行整合)
html-webpack-plugin … (是自动生成html的一个webpack插件)
webpack-dev-server … (无需刷新更新页面)
clean-webpack-plugin … ( 每次打包上线之前都会自动清空dist内的文件如何重新生成最新的文件)
"@babel/core" “@babel/preset-env” babel-loader core-js(安装babel转换,你是什么环境他就会转成什么代码)

可能会遇到的小问题:这里可能会出现的问题就是你下载的依赖包webpack-dev-server版本如果和谷歌的不适配,建议将插件版本改低一点或者谷歌浏览器升级成最新版本否则会出现错误Cannot GET /chrome.exe

接下来创建webpack.config.js进行配置

目录结构:
dabaots
dabaots / package.json
dabaots / webpack.config.js

  1. // 引入一个包
  2. const path = require("path")
  3.  
  4. //引入自动生成html的包
  5. const HtmlWebpackPlugin = require("html-webpack-plugin")
  6.  
  7. //引入更新dist文件的插件
  8. const {CleanWebpackPlugin} = require("clean-webpack-plugin")
  9.  
  10. // webpack中的所有的配置信息都应该写入moudle.exports中
  11. module.exports={
  12. // 指定入口文件
  13. entry:"./src/index.ts",
  14. // 指定打包文件所在目录
  15. output:{
  16. // 指定打包文件的目录
  17. path:path.resolve(__dirname,"dist"),
  18. // 指定打包后文件的文件
  19. filename:"bundle.js",
  20. //编译的时候不使用箭头函数
  21. environment: {
  22. arrowFunction: false
  23. }
  24. },
  25. //webpack打包时要使用到module这个模块
  26. module:{
  27. // 指定要加载的规则
  28. rules:[{
  29. // test指定的是规则生效的文件
  30. test:/\.ts$/,
  31. // use是要使用的loader
  32. //配置babel
  33. use:[
  34. {//指定加载器
  35. loader:"babel-loader",
  36. options:{
  37. //设置预定义环境
  38. presets:[
  39. [
  40. //指定环境的插件
  41. "@babel/preset-env",
  42. //配置信息
  43. {
  44. //要兼容的浏览器
  45. targets:{
  46. "chrome":"88"
  47. },
  48. // 指定corejs的版本
  49. "corejs":"3",
  50. //表示按需加载
  51. "useBuiltIns":"usage"
  52. }
  53. ]
  54. ]
  55. }
  56. },
  57. 'ts-loader'
  58. ],
  59. //设置不被打包上传的文件
  60. exclude:["/node_modules/"]
  61. }]
  62. },
  63. // 配置webpack插件
  64. plugins:[
  65. new HtmlWebpackPlugin({
  66. // 自定义html模板地址
  67. template:"./src/index.html"
  68. }),
  69. //每次打包上线之前都会自动清空dist内的文件如何重新生成最新的文件
  70. new CleanWebpackPlugin()
  71. ],
  72. resolve:{
  73. //解决在ts文件内部单独引入其他ts包时候报错的问题
  74. extensions:['.ts','.js']
  75. }
  76. }

最后在package.json中写入打包及运行等脚本

在终端npm run build 打包运行即可

打包成功后会自动生成一个dist文件

npm run start 自动打开谷歌浏览器且内容为热更新的

到此这篇关于webpack搭建脚手架打包TypeScript代码的文章就介绍到这了,更多相关webpack打包TypeScript代码内容请搜索w3xue以前的文章或继续浏览下面的相关文章希望大家以后多多支持w3xue!

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号