网站搜索

javascript - 在 VS Code 中对 TypeScript 代码进行热重载


// Immediately invoked function Expression (IIFE_)

var message= "Hello World";


(function pro(msg: string): void{
    console.log(`The message is: ${msg}!`);
})(message);

上面是我使用 TypeScript 在 VS Code 中编写的代码。我在网上读到关于热重载的概念,你基本上可以对代码的某部分进行修改,并且能看到它的变化,而不必从起点重新加载。我想能够在使用 VSCode 用 TypeScript 制作的一个非常简单的程序中实现这一点。

我想要的是,我对代码进行修改,例如,我改变 console.log() 函数中的文本,结果会立即在终端中反映出来,而不需要我重新将 TS 代码转译成 JS

有人能告诉我我缺少什么吗,因为我不知道该怎么继续,我需要去哪些设置才能开始热重载?

答案#1

使用 tsc --watch 只是重新编译文件,而不会运行它们。因此,要运行它,需要使用另一个包 ts-watch,它以观察模式启动编译器,监控输出并运行命令。

这个链接希望会有帮助

你可以使用 npm 启动编译器

{
  "scripts": {  
      "start": "tsc-watch --onsuccess \"node dist/index.js\""  
   },
}

答案#2

既然你还没有使用任何形式的软件包管理,看起来你刚刚开始

你可以全局安装 ts-node-dev 包

npm install -g ts-node-dev

然后你将能够从命令行运行 ts-node-dev

安装后

你可以在你编写代码的文件夹中运行此命令

ts-node-dev --respawn .\HelloWorld.ts

或者简单地使用 tsnd --respawn .\HelloWorld.ts

结果 :