第一节:安装

Node.js

命令行的TypeScript编译器可以使用Node.js包来安装。

安装

npm install -g typescript

编译

tsc helloworld.ts

由于无法直接运行TypeScript ,所以会将 ts文件 转换成 js文件, 生成一个 js 的文件;

也可以安装 ts-node ,他是封装了这个编译的过程,不会生成 JS 文件;'

安装

npm install -g ts-node

编译

ts-node helloworld.ts

遇到的问题

1、Cannot find name 'console'. Do you need to change your target library? Try changing the 'lib' compiler option to include 'dom'.
解决:npm install -g @types/node

因为console 不属于 EcmaScript 标准。DOM 里面的 console 是浏览器环境下的,属于浏览器BOM API,Node 里面的 console 是 Node.js 里面的,由nodejs自己定义的API,两者虽然有同样的功能,但是并不是同一个东西,例如你可以参考:如果从 Node.js 编译到浏览器环境, Webpack 本来是需要对 console 进行 polyfill 的,但是恰好有一样的功能,所以不需要。你可以把 console 想成 fs 就是一样的道理了,你不装 @types/node 根本无法使用 fs 的类型提示。 因此总结,主要原因 TypeScript 自带的类型只有 DOM 环境里面的那些类型(在 lib.dom.d.ts 里面),Node.js 的类型是不自带并且通过 @types/node 这个库来维护的。

相关推荐
C_心欲无痕26 分钟前
ts - 模板字面量类型与 `keyof` 的魔法组合:`keyof T & `on${string}`使用
linux·运维·开发语言·前端·ubuntu·typescript
念你那丝微笑44 分钟前
uView Plus + Vue3 + TypeScript + UniApp 正确引入 UnoCSS(避坑版)
vue.js·typescript·uni-app
Irene19911 小时前
Vue 3 中,defineComponent 提供了更好的 TypeScript 类型推断
vue.js·typescript·definecomponent
念你那丝微笑2 小时前
vue3+ts在uniapp项目中实现自动导入 ref 和 reactive
vue.js·typescript·uni-app
EndingCoder11 小时前
Any、Unknown 和 Void:特殊类型的用法
前端·javascript·typescript
起名时在学Aiifox12 小时前
前端文件下载功能深度解析:从基础实现到企业级方案
前端·vue.js·typescript
满天星辰16 小时前
Typescript之类型总结大全
前端·typescript
前端小L1 天前
专题一:搭建测试驱动环境 (TypeScript + Vitest)
前端·javascript·typescript·源码·vue3
Irene19911 天前
TypeScript 中,void 是一种表示“无返回值”的类型
typescript·void
再希1 天前
TypeScript初体验(四)在React中使用TS
javascript·react.js·typescript