3.学习webpack配置 尝试打包ts文件

1.初始化项目并安装依赖

npm init -y 初始化一个新项目

使用npm i -d webpack webpack-cli typescript ts-loader给项目加上webpack的相关包(webpack工具和webpack命令行工具)

webpack webpack工具
webpack-cliwebpack命令行工具

typescriptTS包

ts-loader将ts和webpack工具整合的包

2.进行webpack和typescript的基本配置

webpack

新建一个webpack.config.js文件 这个文件是webpack在项目中的配置文件

javascript 复制代码
// nodejs的模块 帮助我们拼接路径
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指定的是规则生效的文件
        test: /\.ts$/, //匹配所有的以ts结尾的文件
        use: "ts-loader", //用tsloader来处理以ts结尾的文件
        exclude: /node-modules/, //排除文件
      },
    ],
  },
};

tsconfig.json

新建一个tsconfig.json文件 这个文件是typescript在项目中的配置文件

javascript 复制代码
{
  "compilerOptions": {
    //编译器的选项
    // target 用来指定ts编译为js的版本
    "target": "es6",
    "module": "es6",
    "strict": true
  }
}

package.json

在package.json中配置webpack的打包命令

javascript 复制代码
{
  "name": "part2",
  "version": "1.0.0",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "build": "webpack"
  },
  "keywords": [],
  "author": "",
  "license": "ISC",
  "description": "",
  "dependencies": {
    "ts-loader": "^9.5.1",
    "typescript": "^5.7.2",
    "webpack": "^5.97.1",
    "webpack-cli": "^6.0.1"
  }
}

尝试打包一下

可以发现我们的打包是成功的,并且在dist目录中出现了bundle.js文件,这说明使用webpack打包 最基本的功能已经处理完了。

相关推荐
潜意识起点6 分钟前
精通 CSS 阴影效果:从基础到高级应用
前端·css
奋斗吧程序媛10 分钟前
删除VSCode上 origin/分支名,但GitLab上实际上不存在的分支
前端·vscode
汤姆和佩琦17 分钟前
2024-12-25-sklearn学习(20)无监督学习-双聚类 料峭春风吹酒醒,微冷,山头斜照却相迎。
学习·聚类·sklearn
IT女孩儿20 分钟前
JavaScript--WebAPI查缺补漏(二)
开发语言·前端·javascript·html·ecmascript
好学近乎知o28 分钟前
正则表达式(学习Django过程中可能涉及的)
学习·正则表达式·django
雨中奔跑的小孩31 分钟前
爬虫学习案例8
爬虫·学习
jieshenai33 分钟前
使用 VSCode 学习与实践 LaTeX:从插件安装到排版技巧
ide·vscode·学习
m0_748256563 小时前
如何解决前端发送数据到后端为空的问题
前端
请叫我飞哥@3 小时前
HTML5适配手机
前端·html·html5
灰太狼不爱写代码3 小时前
CUDA11.4版本的Pytorch下载
人工智能·pytorch·笔记·python·学习