网站首页 > 开源技术 正文
关于使用 TypeScript 和 Express 初始创建 Node.js 服务器的非常简短的教程。
你们中的许多人可能已经知道使用 Express 和 TypeScript 设置 Node.js 项目是多么容易。 如果您已经知道,那么您将不会在这里真正学到任何新东西。
为什么我要写这个非常短的教程? 好吧,我的意图很简单解释:将来我会写一些需要这样一个项目的文章。 由于我不想一遍又一遍地写它,所以我将在这里简单地参考这篇文章,供那些不确定如何进入这样一个 TypeScript 项目的人使用。
让我们从使用 TypeScript 设置一个简单的 Node.js 项目开始。
首先我们创建一个新的项目目录。
$ mkdir event-sourcing-example
$ cd event-sourcing-example/
现在我们在这个目录中初始化 Node。 使用标志 -y 默认设置,这对于示例性实现应该是有益的。
$ npm init -y
现在让我们安装 TypeScript 依赖项。 我们在运行时不需要这些,因此将它们安装为开发依赖项。 此外,我们还需要 Express 来运行 Node.js 服务器。
$ yarn add express
$ yarn add typescript tslint @types/express -D
现在必须添加一个带有 TypeScript 配置的文件。
$ touch tsconfig.json
将以下内容添加到此文件中。
{
"compilerOptions": {
"module": "commonjs",
"esModuleInterop": true,
"target": "es6",
"moduleResolution": "node",
"sourceMap": true,
"outDir": "dist"
},
"lib": ["es2015"]
}
将以下部分添加/替换到 package.json。
"main": "dist/server.js",
"scripts": {
"dev": "tsc && node dist/server.js",
"test": "echo \"Error: no test specified\" && exit 1"
},
...
创建一个文件“server.ts”,其中将包含 Express Server 的代码,如下所示:
$ mkdir src && touch src/server.ts
为了确保一切正确,您可以检查您的项目是否如下所示:
.
|-- node_modules
|-- package.json
|-- src
| `-- server.ts
|-- tsconfig.json
`-- yarn.lock
然后将该代码添加到 server.ts 文件中。
import express from 'express';const app = express();
const port = 9000;app.get('/', (req, res) => {
res.send('Server is up and running!');
});app.listen(port, () => {
console.log(`Server is listening on ${port}`);
});
太好了,我们现在可以运行服务器了。
$ yarn run dev
在另一个终端窗口(或浏览器)中,我们可以检查服务器是否正在运行。
$ curl localhost:9000
如果一切正常,那么我们应该会看到输出“Server is up and running!”。
而已! 现在您可以开始实现您的 API 或应用程序。
祝你好运!
猜你喜欢
- 2024-10-22 调用 Express API时出现奇怪的CORS错误怎么办?
- 2024-10-22 详解如何从零开始搭建Express+Vue开发环境
- 2024-10-22 从零开始学习nodejs+express--交互环境
- 2024-10-22 express开发(一)简介与搭建(express创建项目)
- 2024-10-22 express中间件原理connect(express和koa中间件原理的区别)
- 2024-10-22 蓝易云 - centos系统直接部署express教程。
- 2024-10-22 Node + Express + Mysql: Todo List项目让你成全栈
- 2024-10-22 我为 Express 开了外挂(cad中的express怎么显示为中文)
- 2024-10-22 七爪源码:让我们 Dockerize 一个 Node.js Express 应用程序
- 2024-10-22 Node实战篇:Express--jade模板引擎(七)
你 发表评论:
欢迎- 03-19基于layui+springcloud的企业级微服务框架
- 03-19开箱即用的前端开发模板,扩展Layui原生UI样式,集成第三方组件
- 03-19SpringMVC +Spring +Mybatis + Layui通用后台管理系统OneManageV2.1
- 03-19SpringBoot+LayUI后台管理系统开发脚手架
- 03-19layui下拉菜单form.render局部刷新方法亲测有效
- 03-19Layui 遇到的坑(记录贴)(layui chm)
- 03-19基于ASP.NET MVC + Layui的通用后台开发框架
- 03-19LayUi自定义模块的定义与使用(layui自定义表格)
- 最近发表
-
- 基于layui+springcloud的企业级微服务框架
- 开箱即用的前端开发模板,扩展Layui原生UI样式,集成第三方组件
- SpringMVC +Spring +Mybatis + Layui通用后台管理系统OneManageV2.1
- SpringBoot+LayUI后台管理系统开发脚手架
- layui下拉菜单form.render局部刷新方法亲测有效
- Layui 遇到的坑(记录贴)(layui chm)
- 基于ASP.NET MVC + Layui的通用后台开发框架
- LayUi自定义模块的定义与使用(layui自定义表格)
- Layui 2.9.11正式发布(layui2.6)
- Layui 2.9.13正式发布(layui2.6)
- 标签列表
-
- jdk (81)
- putty (66)
- rufus (78)
- 内网穿透 (89)
- okhttp (70)
- powertoys (74)
- windowsterminal (81)
- netcat (65)
- ghostscript (65)
- veracrypt (65)
- asp.netcore (70)
- wrk (67)
- aspose.words (80)
- itk (80)
- ajaxfileupload.js (66)
- sqlhelper (67)
- express.js (67)
- phpmailer (67)
- xjar (70)
- redisclient (78)
- wakeonlan (66)
- tinygo (85)
- startbbs (72)
- webftp (82)
- vsvim (79)
本文暂时没有评论,来添加一个吧(●'◡'●)