TypeScript是一种JavaScript的超集语言,它添加了类型注释和一些新特性,可以提高开发效率和代码质量。下面是TypeScript的安装、使用和自动编译的实现攻略。
安装
- 安装Node.js
首先需要安装Node.js,可以在官网下载安装包进行安装。
- 安装TypeScript
打开命令行工具,使用以下命令安装TypeScript:
npm install -g typescript
-g参数表示全局安装,可以在任何目录下使用TypeScript。
现在TypeScript已经安装完成了。
使用
- 创建TypeScript文件
TypeScript文件的扩展名是.ts,可以使用任何文本编辑器打开创建。
比如我们创建一个hello.ts文件,内容如下:
function sayHello(name: string) {
console.log("Hello, " + name + "!");
}
let name = "TypeScript";
sayHello(name);
这是一个简单的TypeScript程序,包括一个函数和一个变量。
- 编译TypeScript文件
打开命令行工具,切换到hello.ts所在的目录下,使用以下命令编译TypeScript文件:
tsc hello.ts
该命令将会生成一个JavaScript文件hello.js,内容如下:
function sayHello(name) {
console.log("Hello, " + name + "!");
}
var name = "TypeScript";
sayHello(name);
可以看到,TypeScript代码被转换成了JavaScript代码。
- 运行JavaScript文件
直接在命令行工具中使用以下命令运行JavaScript文件:
node hello.js
运行结果为:
Hello, TypeScript!
至此,我们已经学会了如何使用TypeScript编写并运行一个简单的程序。
自动编译
每次修改TypeScript文件并手动编译很麻烦,可以使用编译器提供的自动编译功能。
- 安装监视器
打开命令行工具,使用以下命令安装监视器:
npm install -g ts-node
这个监视器可以实时监控TypeScript文件的变化,自动编译成对应的JavaScript文件。
- 启动监视器
在hello.ts所在目录下使用以下命令启动监视器:
ts-node hello.ts
此时监视器已经启动,可以在修改hello.ts文件后实时编译。
比如我们修改hello.ts文件,将其中的变量name改成world:
function sayHello(name: string) {
console.log("Hello, " + name + "!");
}
let name = "world";
sayHello(name);
保存后,监视器会自动编译,输出结果为:
Hello, world!
这个时候可以关闭监视器,使用tsc命令手动编译,或者重新开启监视器。
- 使用脚本
手动启动和关闭监视器很不方便,可以使用脚本来实现自动编译。
在hello.ts所在目录下新建一个名为watch.js的文件,内容如下:
const chokidar = require('chokidar');
const { spawn } = require('child_process');
let child = spawn('ts-node', ['hello.ts']);
chokidar.watch('.').on('all', (event, path) => {
console.log(`${event} ${path}`);
child.kill();
child = spawn('ts-node', ['hello.ts']);
});
该脚本启动一个监视器,当TypeScript文件改变时会自动杀掉之前的进程,重新启动一个新的进程,实现自动编译。
使用以下命令运行脚本:
node watch.js
现在就可以愉快的修改TypeScript文件并实时查看编译后的效果了。
示例说明
- 实例一
在Node.js中使用TypeScript编写一个http服务器,代码如下:
import * as http from 'http';
const hostname = '127.0.0.1';
const port = 3000;
const server = http.createServer((req, res) => {
res.statusCode = 200;
res.setHeader('Content-Type', 'text/plain');
res.end('Hello World\n');
});
server.listen(port, hostname, () => {
console.log(`Server running at http://${hostname}:${port}/`);
});
该程序使用TypeScript语言编写,创建了一个监听3000端口的http服务器。使用以下命令编译并启动服务器:
tsc server.ts && node server.js
这个时候我们就可以在浏览器中访问 http://127.0.0.1:3000/,看到页面上打印出 Hello World!
- 实例二
使用TypeScript编写一个用于打印计算机硬件信息的小工具:
import * as os from 'os';
console.log('CPUs:', os.cpus().length);
console.log('Memory:', os.totalmem() / 1024 / 1024 / 1024, 'GB');
console.log('OS:', os.type(), os.release());
console.log('Home directory:', os.homedir());
该程序使用TypeScript语言编写,调用了os模块来获取CPU数量、内存总量、操作系统类型、家目录等硬件和系统信息。编译并运行程序使用以下命令:
tsc info.ts && node info.js
程序运行结果为:
CPUs: 4
Memory: 8 GB
OS: Windows_NT 10.0.17134
Home directory: C:\Users\abc
这个小工具可以帮助我们快速地查看计算机的硬件和系统信息。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:TypeScript的安装、使用、自动编译的实现 - Python技术站