TypeScript安装及编译

一、TypeScript是什么

​ Type script 是微软基于 Javascript 开发的开源编程语言,是拥有类型的 Javascript 的超集,继承了js 所有语法,此外增加了一些自己语法。可以编译成普通、千净、完整的 JavaScript
代码。

目的: 不是创造新的语言,是增强 JavaScript 的功能,使其更能适合多人开发的企业级项目

二、安装及编译

环境搭建前提:Node 和Npm

全局安装:

// 安装命令
npm install typescript -g// 查看版本
tsc -version

编译运行

编写代码是在ts文件,但实际ts文件是无法直接运行的,需要编译为js文件后,运行js代码

  1. 创建ts 文件。例如hello.ts 文件

    ( TypeScript 编写的文件以 .ts 为后缀,用 TypeScript 编写 React 时,以 .tsx 为后缀)

  2. 编译。将TS编译为 Js

    在终端中输入命令,tsc hello.ts(此时,在同级目录中会出现一个同名的 js 文件)

  3. 执行Js 代码

    在node 中运行。在终端中输入命令,node hello.js

    演示图片:

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

通过 ts-node 进行简化编译运行:

1 . 安装ts-node

npm install ts-node -g

2 . 另外ts-node 需要依赖 tslib 和@types/node 两个包

npm install tslib @types/node -g

3.项目文件夹下执行 tsc --init 自动生成ts 配置文件 tsconfig.json
4.通过 ts-node 运行TypeScript 的代码:

//会直接将 ts->js,然后运行 Js 代码
ts-node hello.ts

vsCode 配置自动监视编译

  1. 初始化配置文件tsc --init
  2. 修改配置

修改生成的js文件存放位置:文件夹所在目录的js文件夹下,js不存在会新建

在这里插入图片描述

  1. 开启自动编译

    终端->执行任务->显示所有任务->找到要监视的文件

在这里插入图片描述

tips:点击后没有监视到ts文件可能会报错,可以忽略正常使用

开启够创建编写ts文件则会自动生成对应js文件

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python修改exe之类的游戏文件中的数值

文章目录 场景查找修改 补充字节to_bytes 场景 某些游戏数值(攻击力、射程、速度…)被写在exe之类的文件里 要先查找游戏数值,然后修改 查找 首先,要查找数值,大数重复较少,建议从大数找起 F 游戏原件…

ROS机器人编程技术应用与实践

机器人编程技术ROS编程基础应用与实践 通过对ROS基础操作命令的应用,熟练掌握以下技能: 1、掌握ROS工作空间和功能包的创建和编译; 2、掌握消息文件和服务文件的创建和编译; 3、能够运用Python编写消息发布节点与主题订阅节点&am…

【JVM】垃圾回收机制(Garbage Collection)

目录 一、什么是垃圾回收? 二、为什么要有垃圾回收机制(GC)? 三、垃圾回收主要回收的内存区域 四、死亡对象的判断算法 a)引用计数算法 b)可达性分析算法 五、垃圾回收算法 a)标记-清除…

Oracle体系结构初探:闪回技术

在Oracle体系结构初探这个专栏中,已经写过了REDO、UNDO等内容。觉得可以开始写下有关备份恢复的内容。闪回技术 — Oracle数据库备份恢复机制的一种。它可以在一定条件下,高效快速的恢复因为逻辑错误(误删误更新等)导致的数据丢失…

【C++】深入剖析C++11中右值引用和左值引用

目录 一、左值引用 && 右值引用 二、左值引用于右值引用的比较 三、 右值引用使用场景和意义 1、函数返回值 ①移动赋值 ②移动构造 2、STL容器插入接口 ​3、完美转发 一、左值引用 && 右值引用 传统的C语法中就有引用的语法,而C11中新增了…

Day 43 1049. 最后一块石头的重量 II 494. 目标和 474.一和零

最后一块石头重量Ⅱ 有一堆石头&#xff0c;每块石头的重量都是正整数。 每一回合&#xff0c;从中选出任意两块石头&#xff0c;然后将它们一起粉碎。假设石头的重量分别为 x 和 y&#xff0c;且 x < y。那么粉碎的可能结果如下&#xff1a; 如果 x y&#xff0c;那么两…

提取网页元数据的Python库之lassie使用详解

概要 Lassie是一个用于提取网页元数据的Python库,它能够智能地抓取网页的标题、描述、关键图像等内容。Lassie的设计目的是为了简化从各种类型的网页中提取关键信息的过程,适用于需要预览链接内容的应用场景。 安装 安装Lassie非常简单,可以通过Python的包管理器pip进行安…

芋道系统springcloud模块启动报错,枚举类不能为空

问题描述&#xff1a; Error starting ApplicationContext. To display the conditions report re-run your application with debug enabled. 2024-05-10 15:50:15.756 | ERROR 9120 | main [TID: N/A] o.s.b.d.LoggingFailureAnalysisReporter | ************************…

TriCore: Architecture

说明 本文是 英飞凌 架构文档 TriCore TC162P core archiecture Volume 1 of 2 (infineon.com) 的笔记&#xff0c;稍作整理方便查阅&#xff0c;错误之处&#xff0c;还请指正&#xff0c;谢谢 :) 1. Architecture 2. General Purpose & System Register 名词列表&#…

通俗的理解网关的概念的用途(三):你的数据包是如何到达下一层的

其实&#xff0c;这一章我写不好&#xff0c;因为这其中会涉及到一些计算和一些广播等概念&#xff0c;本人不善于此项。在此略述&#xff0c;可以参考。 每台设备的不同连接在获得有效的IP地址后&#xff0c;会根据IP地址的规则和掩码的规则&#xff0c;在操作系统和交换机&a…

【前端基础】CSS样式+Vue中绘制时间轴

深度选择器 在 Vue.js 中&#xff0c;/deep/、>>>、:deep 和 ::v-deep 这些都是深度选择器&#xff0c;用于修改子组件的样式。它们主要用于解决作用域样式和组件样式之间的冲突问题。 1. /deep/ 或 >>> /deep/ 和 >>> 是相同的选择器&#xff0c;…

uniApp开发小程序自定义tabBar底部导航栏+tabBar中间凸起自定义样式实现

先看效果是否可以满足你们&#xff0c;如果可以满足你只要一步一步照着做绝对没有错。 本人技术不佳&#xff0c;研究了一整天&#xff0c;全网的大佬们写的博客看的晕头转向&#xff0c;避免大伙再走弯路&#xff0c;跟着我以下步骤一点一点来绝对可以实现。 最终效果图&#…