(二)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代码,可以看到确实生效了

相关推荐
qq_297574671 小时前
【实战教程】SpringBoot 集成阿里云短信服务实现验证码发送
spring boot·后端·阿里云
阿蒙Amon1 小时前
TypeScript学习-第7章:泛型(Generic)
javascript·学习·typescript
fanruitian1 小时前
uniapp android开发 测试板本与发行版本
前端·javascript·uni-app
rayufo1 小时前
【工具】列出指定文件夹下所有的目录和文件
开发语言·前端·python
RANCE_atttackkk1 小时前
[Java]实现使用邮箱找回密码的功能
java·开发语言·前端·spring boot·intellij-idea·idea
韩立学长2 小时前
【开题答辩实录分享】以《智能大学宿舍管理系统的设计与实现》为例进行选题答辩实录分享
数据库·spring boot·后端
2501_944525543 小时前
Flutter for OpenHarmony 个人理财管理App实战 - 支出分析页面
android·开发语言·前端·javascript·flutter
李白你好4 小时前
Burp Suite插件用于自动检测Web应用程序中的未授权访问漏洞
前端
刘一说5 小时前
Vue 组件不必要的重新渲染问题解析:为什么子组件总在“无故”刷新?
前端·javascript·vue.js
编码者卢布5 小时前
【Azure Storage Account】Azure Table Storage 跨区批量迁移方案
后端·python·flask