最小化新建一个Express.js + Typescript的后端项目

0. 初始化一个node项目

在希望的文件夹下npm init,填写必要的信息。

1. 安装所需要的依赖

npm i express -S
npm i @types/express @types/node typescript -D
# 如果你需要热重载的话,再加上
# npm i nodemon ts-node -D

2. 修改tsconfig.json

{
	"rootDir": "./src",
	"outDir": "./dist"
}

3. 配置nodemon(无需热重载跳过此节)

在根目录新建nodemon.json

{
    "ignore": [
        "**/*.test.ts",
        "**/*.spec.ts",
        "node_modules"
    ],
    "watch": [
        "src"
    ],
    "exec": "npm run preview",
    "ext": "ts"
}

watch、exec字段均与接下来的配置有关,watch的是tsconfig中的rootDir,exec是接下来配置的"npm script"

4. 配置npm script

打开package.json, 修改script内的项目:

"scripts": {
    "dev": "nodemon",
    "preview": "ts-node ./src/app.ts",
    "prestart": "npx tsc",
    "start": "node ./dist/app.js"
}

如果不需要热重载,可以不配置dev和preview命令。

5. 初始化一个简单的app.ts

在src下新建一个app.ts作为入口,内容举例如下:

import express, { Application, Request, Response } from 'express';

const app: Application = express();

const PORT: number = 3001;

app.use('/', (req: Request, res: Response): void => {
    res.send('Hello my customer!');
});

app.listen(PORT, (): void => {
    console.log('SERVER IS UP ON PORT:', PORT);
});

6. 结束

项目内执行npm run dev即带有热重载,如果发布,执行npm start即可。

最小化新建一个Express.js + Typescript的后端项目
本文作者
spark1e
发布于
2023-05-12
许可协议
转载或引用本文时请遵守许可协议,注明出处、不得用于商业用途!
评论区 - Powered by Giscus