Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/392.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript VS代码中的typescript代码中的热重新加载 //立即调用的函数表达式(IIFE) var message=“你好,世界”; (函数pro(消息:字符串):无效{ log(`消息是:${msg}!`); })(信息);_Javascript_Typescript_Visual Studio Code_Reloading - Fatal编程技术网

Javascript VS代码中的typescript代码中的热重新加载 //立即调用的函数表达式(IIFE) var message=“你好,世界”; (函数pro(消息:字符串):无效{ log(`消息是:${msg}!`); })(信息);

Javascript VS代码中的typescript代码中的热重新加载 //立即调用的函数表达式(IIFE) var message=“你好,世界”; (函数pro(消息:字符串):无效{ log(`消息是:${msg}!`); })(信息);,javascript,typescript,visual-studio-code,reloading,Javascript,Typescript,Visual Studio Code,Reloading,上面是我使用typescript在VS代码中编写的代码。我在网上读到了热重新加载的概念,在这个概念中,您基本上可以对代码的一部分进行更改,并看到对代码的更改,而无需从一开始就重新加载代码。我想能够做到这一点,用一个非常简单的程序在TypeScript中使用VSCode 我想要的是在我的代码中进行更改,例如,我更改console.log()函数中的文本,结果立即反映在终端中,而无需将TS代码重新传输到JS中 有人能告诉我我缺少什么吗?因为我不知道如何继续,我需要什么设置来启动此热重新加载?使用ts

上面是我使用typescript在VS代码中编写的代码。我在网上读到了热重新加载的概念,在这个概念中,您基本上可以对代码的一部分进行更改,并看到对代码的更改,而无需从一开始就重新加载代码。我想能够做到这一点,用一个非常简单的程序在TypeScript中使用VSCode

我想要的是在我的代码中进行更改,例如,我更改console.log()函数中的文本,结果立即反映在终端中,而无需将TS代码重新传输到JS中

有人能告诉我我缺少什么吗?因为我不知道如何继续,我需要什么设置来启动此热重新加载?

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

这将有很大帮助

您可以使用npm启动编译器

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

因为您没有使用任何类型的包管理,看起来您才刚刚起步

您可以全局安装软件包

npm安装-gts节点开发

然后,您将能够从命令行运行ts节点开发

安装后

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

ts节点开发--重生。\HelloWorld.ts

或者干脆
tsnd——重生。\HelloWorld.ts

结果:


无论您在哪里编译ts代码,user
tsc-w
都会将编译器设置为
watch模式
,因此每次保存文件时,编译器都会自动重新启动。这是我尝试的,但终端显示如下:[15:09:01]在watch模式下开始编译。。。[15:09:04]发现0个错误。监视文件更改。我现在该怎么办?我更改了consol.log()的文本,但没有更改输出,事实上,当我执行tsc-w HelloWorld.tsOk时,首先没有输出,
tsc
只将typescript代码编译为javascript。然后,您必须自己执行该javascript。如果你做了一个
tsc HelloWorld.ts
它将生成一个
HelloWorld.js
文件,你需要使用
节点HelloWorld.js执行它如果你想自动匹配这个让我知道这个评论太长了是的,我想自动执行这个,请告诉我。因为已经有一个ts手表相关的ans,我添加了一个与ts节点开发相关的ans,这对初学者来说更容易。请注意,
ts节点开发
是一个安装在您的系统上的。它是一个使您能够运行typescript代码的包。它基于另一个节点包,它模拟了
节点example.js
,而不是针对命令行的typescript。阅读更多关于
ts node dev
和option--respawn做什么?它类似于监视模式,基本上
tsnd
启动执行代码的子进程,因此
--respawn
告诉tsnd在发现代码更改后重新启动进程或创建进程。这里的过程是执行文件的ts节点好吧,我将它添加到我的package.json文件中,现在我在终端中键入什么?