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
即可。