0

最近我尝试了 Deno,因为它具有原生 TypeScript 支持,我认为将它用作“typescript runner”会很好。例如,您可以在 Node 中编写node server.js,而在 Deno 中deno run -A server.ts,所有这些都在代码运行器扩展中。

在 vscode settings.json 中:

"code-runner.executorMap": {    
    "javascript": "node",
    "typescript": "cd $dir && deno run -A $fileName"       
}

考虑以下 ts 文件 "index.ts" :

const add = (a: number,b: number):number =>{
    console.log(a+b);
    return a+b;
}

add(1,2);

使用扩展运行时的输出:

[Running] deno run -A index.ts
[33m3[39m

[Done] exited with code=0 in 0.082 seconds

使用终端 cmd/powershell 时的输出:

C:\Users\Oliver\Desktop\DenoPJ>deno run -A index.ts
3

关于它为什么在终端内而不是在扩展内工作的任何想法?

4

2 回答 2

0

我试过并且可以重现这个问题。

当您将“运行代码配置”下的设置更改为“在终端中运行”时

在此处输入图像描述

然后使用 再次运行代码AltCtrlN,VSCode 将切换到终端窗口,您应该会看到:

PS C:\Users\jps\source\deno> cd "c:\Users\jps\source\deno\" ; if ($?) { deno run -A index.ts }
3
于 2020-12-18T18:05:30.577 回答
0

尝试向命令添加标志(取决于您的应用程序操作):

deno run --allow-net --allow-read --allow-write --allow-env index.ts
于 2020-12-26T18:17:31.173 回答