
是一种强类型编程语言,它扩展了 JavaScript 的功能。它提供了一系列功能,可帮助您使用 Node.js 和 Express 开发可扩展的应用程序。
与 JavaScript 相比,TypeScript 的关键优势之一是它提供了类型类,使编写更可预测、更可维护的代码变得更加容易。此外,TypeScript 还提供了类型安全性,确保您的代码不会出现运行时错误,并能在开发早期更容易地发现缺陷。该语言还配备了重构工具和自动完成功能,从而改善了开发人员的体验。
此外, 可为任何规模的应用程序提供出色的性能。在 TypeScript 中使用类还有助于组织和结构,进一步提高可扩展性。有了这些工具,您就可以构建稳健且可扩展的应用程序,以应对不断增长的需求。
本文演示了如何使用 TypeScript 通过单个端点设置 Express 应用程序。然后,它将介绍如何将应用程序部署到应用程序托管服务器。
要学习本教程,请确保您的计算机上安装了 。设置 Express 服务器:
mkdir sample_app && cd sample_app
npm init -y
命令中的 -y 标志接受创建 package.json 文件时的默认提示,该文件由以下代码填充:
Explain
{
"name": "sample_app",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"keywords": [],
"author": "",
"license": "ISC"
} express 和用于环境变量管理的 dotenv,运行此命令: npm i express dotenv
PORT=3000
http://localhost:3000 时,该程序会响应 Hello World 文本。 const express = require("express");
const dotenv = require("dotenv");
// configures dotenv to work in your application
dotenv.config();
const app = express();
const PORT = process.env.PORT;
app.get("/", (request, response) => {
response.status(200).send("Hello World");
});
app.listen(PORT, () => {
console.log("Server running at PORT: ", PORT);
}).on("error", (error) => {
// gracefully handle error
throw new Error(error.message);
}) dotenv.config() 使用 .env 文件中定义的变量填充 Node 应用程序的进程环境( process.env )。
node index.js
在浏览器 *** 问 http://localhost:3000,检查应用程序是否正常运行。您应该会得到与此类似的响应。

按照以下步骤在 Express 应用程序中使用 TypeScript:
npm i -D typescript
通过 -D 选项, 可以将软件包安装为开发依赖包。你可以在开发阶段使用该选项安装的软件包。
express 和 dotenv 的类型定义: npm install -D @types/express @types/dotenv
npx tsc --init
生成的 tsconfig.json 文件指出了你的 TypeScript 应用程序的根目录。它提供了定义 TypeScript 编译器工作方式的 config 选项。它包括一系列禁用或启用的配置选项,并附有注释解释每个选项。
config对象中添加 outDir 属性,以定义输出目录。 {
"compilerOptions": {
// …
"outDir": "./dist"
// …
}
} 要创建 TypeScript 服务器,请将 .js 扩展名更改为 .ts 并使用这些类型定义更新代码:
import express, { Request, Response } from "express";
import dotenv from "dotenv";
// configures dotenv to work in your application
dotenv.config();
const app = express();
const PORT = process.env.PORT;
app.get("/", (request: Request, response: Response) => {
response.status(200).send("Hello World");
});
app.listen(PORT, () => {
console.log("Server running at PORT: ", PORT);
}).on("error", (error) => {
// gracefully handle error
throw new Error(error.message);
});
要使用编译器软件包并将 TypeScript 文件编译成 ,请在应用程序的根目录下运行以下命令。
npx tsc
然后运行命令启动应用程序。
node dist/index.js
在浏览器 *** 问 http://localhost:3000 时,会得到 “Hello World” 的响应。
现在,您已经准备好将应用程序部署到 Web 上了。您可以将应用程序部署到许多平台。
在将应用程序推送到 Git 仓库之前,使用 TypeScript 并将编译好的 JavaScript 文件提交到 Git 并不可取。在 package.json 文件中包含一个 start 脚本。
{
// …
"script": {
"start": "npx tsc && node dist/index.js",
}
// …
}
此外,在应用程序的根目录中创建 文件,并包含 node_modules 和 .env 以防止将这些文件推送到 Git 提供者。
设置好仓库后,请按照以下步骤将应用程序部署到线上(以 Kinsta 为例):
存储库设置完成后,请按照以下步骤将应用程序部署到 Kinsta:
npm start 作为部署应用程序的入口点。如果您想使用其他命令,可以在 MyKinsta 中调整运行时进程。部署完成后,MyKinsta 会提供一个 URL 以公开访问您的应用程序部署。您可以访问该页面,确认是否显示 “Hello World”。
本指南演示了如何使用 TypeScript 开发和设置 Express 应用程序,并使用线上服务器部署应用程序。TypeScript 拥有 JavaScript 所没有的额外功能(包括类型类、类型安全、重构工具和自动完成),可帮助您构建可扩展的应用程序并在开发过程中捕捉错误。
您过去使用过 TypeScript 吗?您对在 Express 服务器上使用它有什么看法?
不久前,PHP 8.0大张旗鼓地发布了。它带来了许多新特性、性能增强和变化——其中最令人兴奋的是新的JIT编译器。 技术世界总是在向前发展,PHP也是如此。 ,包含了几个令人兴奋的特性。它定于今年晚些时候于2021年11月25日发布。 在本文中,我们将详细介绍PHP 8.1将带来哪些新的东...
本章节主要是对宝塔面板的主界面的各个版本进行一个简单的说明。 宝塔面板主界面主要包括:服务器操作系统、服务器状态、站点信息、软件管理及网络流量几个部分。 Windows面板有部分功能未实现,其余部分与Linux面板同步。 系统操作...
使用宝塔面板,您可以快速地创建一个FTP管理账户,对网站文件进行管理。但有必要提醒大家的是,使用FTP远不如使用SFTP安全,你可以查看文章“”进一步了解两者之间的差异。 此外,宝塔面板的文件管理模块其实已经能够满足站长的大部分文件管理需求。当然,如果你非得要使用FTP管理服务器文件,可以参照以下...
宝塔面板另外一个特质是,你无需通过Linux命令行来查看服务器各项指标状况,即可以阿里云服务器类似的可视化图表,查看资源使用、负载、CPU占用及内容使用百分比等指标。 默认监控是关闭,有需要的,可以开启,监控数据默认保存30天,可以自行修改,默认监控数据保存在日志,可手动清理该日志。 监控管理,...
宝塔面板其中一个最为便捷的功能之一,无需SFTP或者FTP即可对服务器的文件内容进行上传、下载、编辑及删除等管理操作。 文件管理,用于管理该服务器上的文件内容。 文件的基础操作 文件的基础操作有哪些了,主要有这些方面:复制、粘贴、剪切、删除、重命名、压缩、刷新、新建文件、新建目录。...
JavaScript是世界上最流行的编程语言之一。今天,它为数百万个网站提供支持,并吸引了成群的开发人员和设计人员为Web构建功能。如果您是编程新手,那么 JavaScript很容易成为之一。 在最初的20年里,JavaScript主要用于客户端脚本。由于JavaScript只能在<scr...