如何从命令行运行TypeScript文件?

node.js Node.js

Stafan

2020-03-24

我很难找到答案。使用普通的Node.JS,您可以使用node path/to/file.js,CoffeeScript coffee hello.coffee和ES6具有的任何js文件babel-node hello.js如何使用Typescript进行相同操作?

我的项目有一个tsconfig.json供Webpack / ts-loader使用的工具,用于为浏览器构建一个不错的小捆绑包。不过,在此之前,我需要从控制台运行一个构建步骤,该步骤将使用.ts项目中使用的一些文件来生成模式,但是我似乎无法在不编译的情况下运行单个Typescript文件整个项目。

第3252篇《如何从命令行运行TypeScript文件?》来自Winter(https://github.com/aiyld/aiyld.github.io)的站点

9个回答
梅Tony 2020.03.24

您可以从节点命令行轻松执行此操作。首先,如下创建一个文件Greeter.ts。

class Greeter {
  greeting : string;
  constructor(message : string) {
    this.greeting = message;
  }

  greet() {
    return "Hello, " + this.greeting;
  }
}

let greeter = new Greeter("world");
console.log(greeter.greet());

现在,使用命令编译以上文件,该命令tsc Greeter.ts将在同一目录中创建文件Greeter.js。

现在,您可以运行node Greeter.js将输出的命令Hello, world

樱小胖Mandy 2020.03.24

万一像我这样的人疯了,只想像.js脚本一样运行 TypeScript脚本,可以尝试一下。我编写了一个hacky脚本,该脚本似乎使用node执行.ts脚本。

#!/usr/bin/env bash

NODEPATH="$HOME/.nvm/versions/node/v8.11.3/bin" # set path to your node/tsc

export TSC="$NODEPATH/tsc"
export NODE="$NODEPATH/node"

TSCFILE=$1 # only parameter is the name of the ts file you created.

function show_usage() {
    echo "ts2node [ts file]"
    exit 0
}

if [ "$TSCFILE" == "" ]
then
    show_usage;
fi

JSFILE="$(echo $TSCFILE|cut -d"." -f 1).js"

$TSC $TSCFILE && $NODE $JSFILE

您可以执行此操作或编写自己的操作,但实际上,它会创建.js文件,然后使用node来运行它,如下所示:

# tsrun myscript.ts

简单。只要确保您的脚本只有一个“”即可。否则,您将需要以不同于我所展示的方式更改JSFILE。

梅小小 2020.03.24

该问题发布于2015年。在2018年,node可以识别.js.ts因此,运行node file.ts也将运行。

神乐西门 2020.03.24

给自己写一个简单的bash包装器可能会有所帮助。

#!/bin/bash
npx tsc $1 && node ${1%%.ts}
小胖蛋蛋前端 2020.03.24

要添加到上面的@Aamod答案中,如果要使用一个命令行来编译和运行代码,则可以使用以下命令:

视窗:

tsc main.ts | node main.js

Linux / macOS:

tsc main.ts && node main.js
JimJim小小 2020.03.24

只是有用的信息-这是最新的TypeScript / JavaScript运行时Deno

它是由节点Ryan Dahl的创建者创建的,基于他可能会重新开始时会做的不同。

LGil 2020.03.24

我们有以下步骤

  1. 首先,您需要安装 TypeScript

    npm install -g TypeScript

2.创建一个文件helloworld.ts

function hello(person){
 return "Hello, " + person;
}
let user = "Aamod Tiwari";
const result = hello(user);
console.log("Result",result)

3.打开命令提示符,然后键入以下命令

tsc helloworld.ts

  1. 再次运行命令

节点helloworld.js

  1. 结果将显示在控制台上
猴子村村 2020.03.24

运行以下命令并全局安装所需的软件包:

npm install -g ts-node
npm install -g typescript

现在运行以下命令来执行 TypeScript文件:

ts-node typescript-file.ts
Davaid番长 2020.03.24

我如何用Typescript做同样的事情

您可以将tsc使用表模式下运行tsc -w -p .,它会产生.js在现场的时尚你的文件,这样你就可以运行node foo.js像正常

TS节点

有ts-node:https : //github.com/TypeStrong/ts-node会为您做所有这一切🌹

问题类别

JavaScript Ckeditor Python Webpack TypeScript Vue.js React.js ExpressJS KoaJS CSS Node.js HTML Django 单元测试 PHP Asp.net jQuery Bootstrap IOS Android