TypeScript ~ TS Webpack构建工具 ⑦

news2024/11/18 19:46:57

请添加图片描述

@作者 : SYFStrive

 
请添加图片描述

@博客首页 : HomePage

📜: TypeScript ~ TS

📌:个人社区(欢迎大佬们加入) 👉:社区链接🔗

📌:觉得文章不错可以点点关注 👉:专栏连接🔗

💃:感谢支持,学累了可以先看小段由小胖给大家带来的街舞

请添加图片描述
相关专栏

👉 微信小程序(🔥)
👉 UNIAPP开发(🔥)


                    ⡖⠒⠒⠒⠤⢄⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸   ⠀⠀⠀⡼⠀⠀⠀⠀ ⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢶⣲⡴⣗⣲⡦⢤⡏⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣰⠋⠉⠉⠓⠛⠿⢷⣶⣦⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢠⠇⠀⠀⠀⠀⠀⠀⠘⡇⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡞⠀⠀⠀⠀⠀⠀⠀⢰⠇⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⡴⠊⠉⠳⡄⠀⢀⣀⣀⡀⠀⣸⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⢸⠃⠀⠰⠆⣿⡞⠉⠀⠀⠉⠲⡏⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠈⢧⡀⣀⡴⠛⡇⠀⠈⠃⠀⠀⡗⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣱⠃⡴⠙⠢⠤⣀⠤⡾⠁⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⢀⡇⣇⡼⠁⠀⠀⠀⠀⢰⠃⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⣸⢠⣉⣀⡴⠙⠀⠀⠀⣼⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⡏⠀⠈⠁⠀⠀⠀⠀⢀⡇⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⢸⠃⠀⠀⠀⠀⠀⠀⠀⡼⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⢸⠀⠀⠀⠀⠀⠀⠀⣰⠃⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⣀⠤⠚⣶⡀⢠⠄⡰⠃⣠⣇⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⢀⣠⠔⣋⣷⣠⡞⠀⠉⠙⠛⠋⢩⡀⠈⠳⣄⠀⠀⠀⠀⠀⠀⠀
⠀⡏⢴⠋⠁⠀⣸⠁⠀⠀⠀⠀⠀ ⠀⣹⢦⣶⡛⠳⣄⠀⠀⠀⠀⠀
⠀⠙⣌⠳⣄⠀⡇   不能   ⡏⠀⠀  ⠈⠳⡌⣦⠀⠀⠀⠀
⠀⠀⠈⢳⣈⣻⡇   白嫖 ⢰⣇⣀⡠⠴⢊⡡⠋⠀⠀⠀⠀
⠀⠀⠀⠀⠳⢿⡇⠀⠀⠀⠀⠀⠀⢸⣻⣶⡶⠊⠁⠀⠀
⠀⠀⠀⠀⠀⢠⠟⠙⠓⠒⠒⠒⠒⢾⡛⠋⠁⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⣠⠏⠀⣸⠏⠉⠉⠳⣄⠀⠙⢆⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⡰⠃⠀⡴⠃⠀⠀⠀⠀⠈⢦⡀⠈⠳⡄⠀⠀⠀⠀⠀⠀⠀
⠀⠀⣸⠳⣤⠎⠀⠀⠀⠀⠀⠀⠀⠀⠙⢄⡤⢯⡀⠀⠀⠀⠀⠀⠀
⠀⠐⡇⠸⡅⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠹⡆⢳⠀⠀⠀⠀⠀⠀
⠀⠀⠹⡄⠹⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣇⠸⡆⠀⠀⠀⠀⠀
⠀⠀⠀⠹⡄⢳⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢹⡀⣧⠀⠀⠀⠀⠀
⠀⠀⠀⠀⢹⡤⠳⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣷⠚⣆⠀⠀⠀⠀
⠀⠀⠀⡠⠊⠉⠉⢹⡀⠀⠀⠀⠀⠀⠀⠀⠀⢸⡎⠉⠀⠙⢦⡀⠀
⠀⠀⠾⠤⠤⠶⠒⠊⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠙⠒⠲⠤⠽   

提示:以下是本篇文章正文内容

T y p e S c r i p t TypeScript TypeScript 简介


  1. TypeScript是JavaScript的超集。
  2. 它对JS进行了扩展,向JS中引入了类型的概念,并添加了许多新的特性。
  3. TS代码需要通过编译器编译为 → JS,然后再交由JS解析器执行。
  4. TS完全兼容JS,换言之,任何的JS代码都可以直接当成JS使用。
  5. 相较于JS而言,TS拥有了静态类型,更加严格的语法,更强大的功能;TS可以在代码执行前就完成代码的检查,减小了运行时异常的出现的几率;TS代码可以编译为任意版本的JS代码,可有效解决不同JS运行环境的兼容问题;同样的功能,TS的代码量要大于JS,但由于TS的代码结构更加清晰,变量类型更加明确,在后期代码的维护中TS却远远胜于JS

T y p e S c r i p t TypeScript TypeScript 开发环境搭建

  1. 官方 https://www.tslang.cn/index.html

  2. 下载Node.js

    • 64位:https://nodejs.org/dist/v14.15.1/node-v14.15.1-x64.msi
    • 32位:https://nodejs.org/dist/v14.15.1/node-v14.15.1-x86.msi
  3. 安装Node.js

  4. 使用npm全局安装typescript

    • 进入命令行
    • 输入:npm i -g typescript
  5. 创建一个ts文件

  6. 使用tsc对ts文件进行编译

    • 进入命令行

    • 进入ts文件所在目录

    • 执行命令:tsc xxx.ts

T y p e S c r i p t TypeScript TypeScript W e b p a c k Webpack Webpack

说明 : 通常情况下,实际开发中我们都需要使用构建工具对代码进行打包,TS同样也可以结合构建工具一起使用,下边以webpack为例介绍一下如何结合构建工具使用TS。

1、 使用步骤

  • 进入项目根目录,执行命令 npm init -y
  • 主要作用:创建package.json文件

2、 下载构建工具

  • 命令 → npm i -D webpack webpack-cli webpack-dev-server typescript ts-loader clean-webpack-plugin
  • 共安装了7个包
  1. webpack
    • 构建工具webpack
  2. webpack-cli
    • webpack的命令行工具
  3. webpack-dev-server
    • webpack的开发服务器
  4. typescript
    • ts编译器
  5. ts-loader
    • ts加载器,用于在webpack中编译ts文件
  6. html-webpack-plugin
    • webpack中html插件,用来自动创建html文件
  7. clean-webpack-plugin
    • webpack中的清除插件,每次构建都会先清除目录

3、 根目录下创建 W e b p a c k Webpack Webpack的配置文件 w e b p a c k . c o n f i g . j s webpack.config.js webpack.config.js

代码演示 ↓

const path = require("path");
const HtmlWebpackPlugin = require("html-webpack-plugin");
const { CleanWebpackPlugin } = require("clean-webpack-plugin");

module.exports = {
    optimization:{
        minimize: false // 关闭代码压缩,可选
    },

    entry: "./src/index.ts",
    
    devtool: "inline-source-map",
    
    devServer: {
        contentBase: './dist'
    },

    output: {
        path: path.resolve(__dirname, "dist"),
        filename: "bundle.js",
        environment: {
            arrowFunction: false // 关闭webpack的箭头函数,可选
        }
    },

    resolve: {
        extensions: [".ts", ".js"]
    },
    
    module: {
        rules: [
            {
                test: /\.ts$/,
                use: {
                   loader: "ts-loader"     
                },
                exclude: /node_modules/
            }
        ]
    },

    plugins: [
        new CleanWebpackPlugin(),
        new HtmlWebpackPlugin({
            title:'TS测试'
        }),
    ]
}

4、 根目录下创建 T s c o n f i g . j s o n Tsconfig.json Tsconfig.json,配置可以根据自己需要

代码演示 ↓

{
    "compilerOptions": {
        "target": "ES2015",
        "module": "ES2015",
        "strict": true
    }
}

5、 修改 P a c k a g e . j s o n Package.json Package.json添加如下配置

代码演示 ↓

{
  ......
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "build": "webpack",
    "start": "webpack serve --open chrome.exe"
  },
  ......
}

6、 执行命令

在src下创建ts文件,并在并命令行执行npm run build对代码进行编译,或者执行npm start来启动开发服务器 。

总结

以上是个人学习TypeScript的相关知识点,一点一滴的记录了下来,有问题请评论区指正,共同进步,这才是我写文章的原因之,如果这篇文章对您有帮助请三连支持一波

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/681671.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

chatgpt赋能python:Python相加:实现快速、高效的计算

Python相加: 实现快速、高效的计算 Python 运用广泛,是一种功能强大的编程语言。它不仅易于学习,而且具备许多强大的功能,其中包括 Python 相加。今天,我们将介绍如何写 Python 相加的代码,以及如何实现快…

chatgpt赋能python:如何将Python程序打包成App-一个详细的指南

如何将Python程序打包成App - 一个详细的指南 如果你是一位有着丰富Python编程经验的开发者,可能你听说过Python App打包。Python App打包就是将Python程序打包成为操作系统所支持的应用程序的过程。这个过程可以让你的Python程序在Windows、Mac和Linux操作系统上更…

Linux网络、进程

一、网络环境配置 第一种方法:自动获取 登陆后,通过界面来设置自动获取IP,特点:linux启动后会自动获取IP,缺点是每次自动获取的IP地址可能不一样。这种就不适合服务器使用 第二种方法:指定IP 直接修改配置…

【Leetcode60天带刷】day24 回溯算法—— 77. 组合

​ 理论基础: 什么是回溯法? 回溯法也可以叫做回溯搜索法,它是一种搜索的方式。 回溯法解决的问题 回溯法,一般可以解决如下几种问题: 组合问题:N个数里面按一定规则找出k个数的集合切割问题&#xff…

chatgpt赋能python:Python程序如何打包成安装包

Python程序如何打包成安装包 Python是一种受欢迎的编程语言,许多开发者使用它构建各种类型的应用程序。然而,当需要分发Python应用程序时,将所有代码和依赖项打包成新的安装包通常是最佳选择。本文将介绍如何使用Python打包工具将Python程序…

Java并发工具Fork/Join原理

我们一直讲,并发编程可以分为三个层面的问题,分别是分工、协作和互斥,当你关注于任务的时候,你会发现你的视角已经从并发编程的细节中跳出来了,你应用的更多的是现实世界的思维模式,类比的往往是现实世界里…

Golang每日一练(leetDay0107) 去除重复字母、最大单词长度乘积

目录 316. 去除重复字母 Remove Duplicate Letters 🌟🌟 318. 最大单词长度乘积 Maximum-product-of-word-lengths 🌟🌟 🌟 每日一练刷题专栏 🌟 Rust每日一练 专栏 Golang每日一练 专栏 Python每日…

【Less】四则运算

Less四则运算特点 对于两个不同单位值之间的运算,不要求你进行运算操作的几个值必须带单位,只要其中有一个有单位就可以了,运算结果的值会优先取第一个值的单位为准。如: 2030px-10em编译成40px。border:10em; border:(border2px)…

数据挖掘——宁县(区、市)农村居民人均可支配收入影响因子分析(论文)

《数据挖掘与分析》课程论文 题目:宁县(区、市)农村居民人均可支配收入影响因子分析 xx学院xx班:xxx 2022年6月 摘要:农村居民人均可支配收入可能被农作物产量、牲畜存栏、农作物播种数量等诸多因素影响。为此&#…

JavaSE基础语法--封装

Java是一门面向对象的语言。面向对象的三大特性:封装,继承,多态。封装到底是什么含义呢?通俗来讲就是屏蔽掉类的实现细节,对外提供接口让你调用。举个现实生活中的例子: 刚好618刚过,我因为需求…

chatgpt赋能python:Python算和的重要性及优势

Python算和的重要性及优势 在现代科技时代,计算机的应用范围越来越广泛,Python算和作为一种高效而强大的计算工具,已经成为了无数科学家和工程师的必备技能。Python算和不仅仅在各类科学实验中有着重要的应用,也在企业开发、数据…

chatgpt赋能python:Python程序一直运行怎么停止?

Python程序一直运行怎么停止? 在开发软件时,有时候我们会遇到Python程序一直运行不停止的情况,这时候我们该如何解决呢?本文将介绍一些常见的方法帮助您停止Python程序。 常见的停止Python程序的方法 1. KeyboardInterrupt&…

【硬件5】vr电源芯片驱动

文章目录 1.读MPS5023芯片:0x03ff即将前6位屏蔽2.读PXE1410CDM电压和电流:一个数&0x7ff,将这个数前5位全变为0,其余位不变2.1 1ine11:先看第15和10位,e9b6是上面读出的值2.2 1ine16:PMBUS协…

chatgpt赋能python:Python空循环:提高代码效率的神器

Python空循环:提高代码效率的神器 Python作为一门高效、易学的编程语言,广泛应用于各行各业。在编写Python代码时,循环结构是经常使用的。但是,有时候我们需要使用循环结构,但并不需要执行任何操作。这时候&#xff0…

chatgpt赋能python:Python中的空格:一种重要的编程元素

Python中的空格:一种重要的编程元素 在Python编程中,空格是被广泛使用的重要元素之一。本文将介绍Python中空格的重要性,并探讨空格在编程中的不同应用。 为什么空格在Python编程中如此重要? Python对空格敏感,意味…

CVPR2023 多目标跟踪(MOT)汇总

一、《OVTrack: Open-Vocabulary Multiple Object Tracking》 作者:Siyuan Li* Tobias Fischer* Lei Ke Henghui Ding Martin Danelljan Fisher Yu Computer Vision Lab, ETH Zurich 论文链接 :https://openaccess.thecvf.com/content/CVPR2023/papers/Li_OVTrack…

[Selenium] 通过Java+Selenium查询某个博主的Top40文章质量分

系列文章目录 通过JavaSelenium查询文章质量分 通过JavaSelenium查询某个博主的Top40文章质量分 文章目录 系列文章目录前言一、环境准备二、查询某个博主的Top40文章2.1、修改pom.xml配置2.2、配置Chrome驱动2.3、引入浏览器配置2.4、设置无头模式2.5、启动浏览器实例&#x…

【瑞萨RA_FSP】WiFi——ESP8266模块通讯

文章目录 一、Wifi模块简介二、ESP8266功能介绍1. 通用输入/输出接口(GPIO)2. 使用UART与WIFI通讯3. ESP8266工作模式介绍 三、AT指令四、实验:STA模式测试1. 文件结构2. 宏定义函数3. ESP8266-STA功能函数4. 中断回调函数5. hal_entry入口函…

chatgpt赋能python:Python中的空值

Python中的空值 在Python编程中,空值指的是没有任何值的对象。在其他编程语言中,空值常常被称为null、nil、None或者undefined。Python中的空值用None关键字表示。 None 在Python语言中,None用于表示没有任何值。当用户要定义一个值却不想…

chatgpt赋能python:Python组合框(Combobox)介绍

Python组合框(Combobox)介绍 Python组合框(Combobox)是GUI编程中常用的一个组件,它可以让你在一个下拉框中选择一个或多个选项。Python组合框的特点是可以让用户自定义选项,也可以在选项中加入数据&#x…