Mac安装配置typescript及在VSCode上运行ts

一、Mac上安装typescript

复制代码
sudo npm install -g typescript

测试一下:出现Version则证明安装成功

复制代码
tsc -v   

二、在VSCode上运行

新建一个xxx.ts文件,测试能否运行

TypeScript 复制代码
console.log("helloworld")

运行报错:ts-node: command not found

再安装ts-node

TypeScript 复制代码
sudo npm install -g ts-node

运行报错:TypeError ERR_UNKNOWN_FILE_EXTENSION: Unknown file extension ".ts"

在终端上输入

TypeScript 复制代码
tsc --init

显示创建了一个tsconfig.json文件

修改文件

TypeScript 复制代码
vi tsconfig.json

加上"ts-node": {"esm": true}, 注意不要加到"compilerOptions"里去了

TypeScript 复制代码
{
  "ts-node": {"esm": true}, 
  "compilerOptions": {...}
}

再去VSCode里运行,发现成功输出helloworld

三、遇到export问题

TypeScript 复制代码
export enum abc {
    a = 'aa',
    b = 'bb'
}
console.log(abc)

运行报错:ReferenceError: exports is not defined in ES module scope

解决方案:在package.json里删除 "type": "module",

TypeScript 复制代码
vi package.json

删掉 "type": "module",

运行成功

相关推荐
柚yuzumi1 小时前
别再猜 this:先看它属于谁,再看它指向谁
前端·javascript
汉堡大王95271 小时前
面试必考:手写代码 new 做了什么?从原理到实现全解析
前端·javascript·面试
BillKu2 小时前
TypeScript中,字符串字面量联合类型(Union Type)、enum的用法说明
前端·javascript·typescript
顶级自由人4 小时前
本地正常、线上正常,为什么一个 Hook 仍会报错?
前端·javascript·程序员
lerhxx4 小时前
R3F 第一人称漫游与碰撞检测:Pointer Lock + 不穿墙的滑墙秘诀(中)
前端·javascript·three.js
西瓜太郎4994 小时前
用 TypeScript 写一个健壮的 SSE 流式响应解析器
typescript
labixiong4 小时前
button按钮原生开关弹窗,零 JS 搞定80%交互场景
前端·javascript·html
隔岸观火烧连营4 小时前
如何用 WebCodecs 在浏览器里实现高清录屏 —— 无插件、无水印、直接导出 MP4
前端·javascript
kingbal5 小时前
MAC:chatgpt登陆报错签名异常
macos·chatgpt
k4m7v2pz5 小时前
macOS 窗口最小化:三种写法的实测对比与可复用脚本
macos·窗口管理·截屏·applescript·bevy·ai自动化