(二)TypeScript前置编译配置

TS常用的一些前置配置知识

指定TS编译和生成目录

通过修改tsconfig.json配置项,可以调整TS编译后生成的JS位置,也可以指定TS代码编写的位置。手动创建一个dist目录用来存放编译后的JS文件,创建一个src目录,用来存放TS代码,如图:

使用模块化隔离变量

当TS进行语法检测,发现不同的文件存在相同名字的变量,会提示报错,

那么需要使用模块化进行全局变量隔离,通过 export{}

如果tsconfig.json如果模块配置的是common.js ,那么JS会编译成CJS规范写法;如果配置的是ES Module,那么JS会生成mjs规范写法。这些都是Node的知识,不做多说明

编译优化

一个很有趣的现象,TS代码如果有错误依然会编译成功,生成JS代码。num01是string类型,也就是字符串类型;必须写成let num01:string = '120'这种语法。

typescript 复制代码
let username: string = 'bobo'

let num01: string = 120

export {}

已经有错误提示了

但还是生成了JS文件

貌似JS代码还是可以走得通,因为JS弱类型的优势;但这不是我想要的,按理说错误提示不应该编译生成JS代码,通过修改tsconfig.json配置noEmitOnError:true,这样TS语法报错,就不再生成JS文件

Node环境配置TS编译后运行

JS代码可以直接在Node或者浏览器环境运行。目前TS生成JS,还需要在把JS拿到Node 或者 浏览器环境才能运行。这样比较麻烦,通过ts-node这个指令去编译TS文件,编译后就会输出结果

bash 复制代码
全局安装ts-node
npm i -g ts-node typescript

这里或许有疑问为什么是npm,而不是pnpm;其实npm和pnpm都是一样的,npm安装依赖,你用pnmp构建的项目也是可以识别 ts-node ./src/*,编译并运行ts代码,可以看到确实生效了

相关推荐
胡gh5 小时前
页面卡成PPT?重排重绘惹的祸!依旧性能优化
前端·javascript·面试
ningqw5 小时前
SpringBoot 常用跨域处理方案
java·后端·springboot
你的人类朋友5 小时前
vi编辑器命令常用操作整理(持续更新)
后端
胡gh5 小时前
简单又复杂,难道只能说一个有箭头一个没箭头?这种问题该怎么回答?
javascript·后端·面试
言兴5 小时前
# 深度解析 ECharts:从零到一构建企业级数据可视化看板
前端·javascript·面试
山有木兮木有枝_5 小时前
TailWind CSS
前端·css·postcss
一只叫煤球的猫6 小时前
看到同事设计的表结构我人麻了!聊聊怎么更好去设计数据库表
后端·mysql·面试
uzong6 小时前
技术人如何对客做好沟通(上篇)
后端
烛阴6 小时前
TypeScript 的“读心术”:让类型在代码中“流动”起来
前端·javascript·typescript
杨荧6 小时前
基于Python的农作物病虫害防治网站 Python+Django+Vue.js
大数据·前端·vue.js·爬虫·python